Mengapa tidak menginstal svn saja di notebook linux Anda menggunakan check out langsung dari repositori proyek? Git mungkin menjadi panas baru, tetapi sepertinya Anda membuat hidup Anda tidak perlu rumit dalam kasus khusus ini.
bendin
bendin tidak, aku tidak tahu itu rumit, karena aku mengatur lingkungan sekarang aku senang kau berbicara ...
Setori
1
Pertama: notebook saya tidak diizinkan masuk ke vpn ini, jadi saya tidak bisa mengakses svn secara langsung. kedua: Saya ingin mengkomit ke repositori saya sendiri, inti dari penggunaan git adalah agar saya dapat melakukan commit lokal, cabang dan bergabung tanpa kesulitan. Saya menemukan menggunakan svn sekarang agak kram.
Setori
Jika Anda memasang python, yang sederhana git instaweb -d pythonbisa jadi cukup (dengan Git 2.21, Februari 2019): lihat jawaban saya di bawah ini
VonC
Jawaban:
197
Navigasikan ke proyek Anda dan mulai git-daemon dengan sakelar berikut:
cd project
git daemon --reuseaddr --base-path=. --export-all --verbose
Ini memberitahu git-daemon untuk melayani semua proyek di dalam direktori saat ini (yang saya asumsikan adalah direktori proyek yang berisi .git / folder). Ia juga mengatakan untuk menggunakan kembali alamat yang sama jika Anda mematikannya dan memulainya kembali terlalu cepat.
Anda bisa memasukkan ini ke dalam skrip batch dengan nama yang mudah diingat seperti "gitserve", jadi Anda tidak perlu mengetik semuanya lagi. Seperti yang disarankan dalam beberapa komentar, dalam versi terbaru dari Git Anda dapat menambahkan alias ke konfigurasi Git :
Saya pikir penting untuk dicatat bahwa meskipun git daemonmemungkinkan untuk akses jarak jauh oleh klien git lain, ia tidak memiliki antarmuka Web yang hg servemenyediakan.
Rob Kennedy
4
make serve alias di .gitrc Anda seperti:serve = !git daemon --reuseaddr --verbose --base-path=. --export-all ./.git
Daripada menulis skrip batch Anda sendiri, gunakan gitjour . Ia tahu cara menjalankan git daemon dengan benar dan akan menyiarkan URL klon melalui mDNS sehingga Anda dapat melakukannya gitjour showdi kotak linux dan menyalin dan menempel.
katanyalighttpd not found. Install lighttpd or use --httpd to specify another httpd daemon.
Rakib
4
@syedrakib Anda harus menginstal lighttpd, atau apache2, atau yang lainnya. Secara pribadi saya gunakan git instaweb -d webrickpada OS X, karena webrick dilengkapi dengan Ruby, yang sudah diinstal pada OS X.
Martijn Heemels
6
Alat ini sepertinya tidak kompatibel dengan Windows. Karena poster itu meminta alat Windows, itu adalah faktor penting untuk jawaban ini.
Robert MacLean
9
Inilah cara alternatif. Anda harus memasang python.
Lari git update-server-info
buka .gitdirektori
Lari python -mSimpleHTTPServer
(cukup buat alias di gitconfig Anda)
Sekarang Anda dapat menarik repo dengan git pull http://HOST_NAME:8000/
PS: ketika menggunakan solusi git daemon Anda dapat mengatur --base-path=.gitagar urlnyagit://HOST/
Saya hanya mencoba dengan membabi buta. Saya dapat git kloning tetapi tidak dapat mengakses webgui. Tampaknya browser sedang menunggu respons dari server Anda.
sree
0
Tambahkan baris berikut di .git / config
[instaweb]
local = true
httpd = webrick
port = 4231
Dengan tambalan ini dimungkinkan untuk meluncurkan git-instawebdengan menggunakan Python http.serverCGI handler via -d pythonopsi.
git-instawebmenghasilkan pembungkus kecil di sekitar http.server(dalam GIT_DIR/gitweb/) yang membahas batasan penangan CGI di mana skrip CGI harus berada dalam cgi-binsubdirektori dan indeks direktori tidak dapat dengan mudah diubah. Agar implementasi tetap kecil, gitwebberjalan di url /cgi-bin/gitweb.cgidan pengalihan otomatis dilakukan saat membuka /.
Pembungkus yang dihasilkan kompatibel dengan Python 2 dan 3.
Python secara default diinstal pada sebagian besar distribusi Linux modern yang memungkinkan berjalan git instaweb -d pythontanpa perlu hal lain.
git instaweb -d python
bisa jadi cukup (dengan Git 2.21, Februari 2019): lihat jawaban saya di bawah iniJawaban:
Navigasikan ke proyek Anda dan mulai git-daemon dengan sakelar berikut:
Ini memberitahu git-daemon untuk melayani semua proyek di dalam direktori saat ini (yang saya asumsikan adalah direktori proyek yang berisi .git / folder). Ia juga mengatakan untuk menggunakan kembali alamat yang sama jika Anda mematikannya dan memulainya kembali terlalu cepat.
Anda bisa memasukkan ini ke dalam skrip batch dengan nama yang mudah diingat seperti "gitserve", jadi Anda tidak perlu mengetik semuanya lagi. Seperti yang disarankan dalam beberapa komentar, dalam versi terbaru dari Git Anda dapat menambahkan alias ke konfigurasi Git :
Setelah selesai di server (kotak Windows Anda), Anda dapat melakukan:
git-daemon menggunakan protokol git: // untuk transportasi, jadi pada klien (kotak Linux Anda), Anda perlu melakukan:
sumber
git daemon
memungkinkan untuk akses jarak jauh oleh klien git lain, ia tidak memiliki antarmuka Web yanghg serve
menyediakan.serve = !git daemon --reuseaddr --verbose --base-path=. --export-all ./.git
Daripada menulis skrip batch Anda sendiri, gunakan gitjour . Ia tahu cara menjalankan git daemon dengan benar dan akan menyiarkan URL klon melalui mDNS sehingga Anda dapat melakukannya
gitjour show
di kotak linux dan menyalin dan menempel.Juga artikel yang bagus dengan ikhtisar gitjour dan sejumlah alat serupa lainnya dari Dr. Nic, Apa itu * jour dan mengapa mereka adalah aplikasi pembunuh untuk RailsCamp08 .
sumber
Saat ini menggunakan dua alias - melayani dan hub. Sajikan untuk hanya-baca dan hub untuk baca / tulis:
Juga, ada tutorial yang lebih terperinci tentang berbagi melalui git daemon: http://l.rw.rw/git-daemon .
sumber
Jika Anda hanya ingin mengekspos repositori dengan browser web
git-instaweb
sumber
lighttpd not found. Install lighttpd or use --httpd to specify another httpd daemon.
git instaweb -d webrick
pada OS X, karena webrick dilengkapi dengan Ruby, yang sudah diinstal pada OS X.Inilah cara alternatif. Anda harus memasang python.
git update-server-info
.git
direktoripython -mSimpleHTTPServer
(cukup buat alias di gitconfig Anda)
Sekarang Anda dapat menarik repo dengan
git pull http://HOST_NAME:8000/
PS: ketika menggunakan solusi git daemon Anda dapat mengatur
--base-path=.git
agar urlnyagit://HOST/
sumber
git-webui adalah ekstensi git yang menyediakan antarmuka pengguna berbasis web dan kemampuan untuk mengkloning / menarik dari komputer lain
https://github.com/alberthier/git-webui
Orang lain bisa
atau
sumber
Tambahkan baris berikut di .git / config
kemudian jalankan
sumber
Git 2.21 (Feb. 2019) memungkinkan Anda untuk menggabungkan python dan
git instaweb
:Lihat komit 2eb14bb (28 Jan 2019) oleh Arti Zirk (
artizirk
) .(Digabung oleh Junio C Hamano -
gitster
- di commit abf39e3 , 05 Feb 2019)sumber