Menyiapkan Repositori Git di Remote Windows Server?

22

Saya memiliki server windows yang dapat saya akses secara lokal atau jarak jauh melalui internet melalui koneksi desktop jarak jauh, dll.

Saya ingin mengatur repositori git (sesuatu yang mirip dengan "trunk" dalam subversi), yang dapat berisi serangkaian repositori untuk beberapa proyek.

Adakah yang tahu bagaimana cara saya melakukan ini? Saya ingin melakukannya menggunakan GUI jika memungkinkan. Saya telah mengikuti Tutorial Git Bash ini tetapi sangat panjang dan tidak persis apa yang saya cari.

Saya menggunakan klien Git bernama MSYSGIT. Dengan menggunakan ini saya hanya ingin dapat mengatur repositori jarak jauh dan mulai melakukan kode sumber.

Bantuan apa pun akan sangat dihargai!

Goober
sumber

Jawaban:

13

Saat ini ada fitur unggahan "HTTP pintar", bahkan mungkin menggantikan akses SSH. Tidak diperlukan lagi pembuatan kunci privat, dan pemasangan harus lebih mudah, karena komponen server dapat ditulis dalam bahasa pilihan apa pun:

Jika semuanya gagal, Anda juga dapat memilih untuk men-setup server Apache, dan menggunakan git-http-backendbiner CGI standar , lihat: Apa langkah-langkah untuk mensetup git-http-backend w / Apache pada Windows?

vdboor
sumber
Perhatikan bahwa "hari ini" sudah lebih dari 2 tahun yang lalu. Sebagai jawaban teratas, saya ingin tahu jika ada yang berubah dalam pikiran Anda?
RyanW
Baik keduanya sama-sama didukung di Linux, dan keduanya harus tetap. Saya tidak tahu banyak tentang situasi Windows sekarang *, selain itu saya berharap dukungan HTTP menjadi solusi yang lebih disukai. * karena saya kebanyakan menggunakan Mac / Linux "hari ini";)
vdboor
Hai @ DVD Saya punya satu pertanyaan. Jika kita menggunakan ssh, kita dapat memiliki otentikasi kunci publik sehingga kita tidak perlu mengirim kata sandi setiap kali kita ingin menarik atau mendorong. Apakah fitur masuk tunggal ini tersedia dalam Smart Httpmetode? Maksud saya menentukan kata sandi sekali untuk semua tindakan push / pull ke server.
AmirHossein
2

Anda bisa melihat menggunakan Cygwin + SSH + Gitosis untuk melayani kebutuhan tersebut, tetapi sayangnya itu tidak akan menjadi proses setup point-and-klik yang sederhana. Saya telah menulis posting blog terperinci tentang pengalaman saya baru-baru ini (termasuk prosedur pengaturan).

Adapun persyaratan Anda untuk ini menjadi pengalaman grafis terutama, saya akan merekomendasikan semua sistem klien Anda memiliki TortoiseGit diinstal. Ini akan mencegah perlunya menggunakan baris perintah untuk menambah, melakukan, mendorong / menarik dan sebagainya.

Mark Embling
sumber
Opsi SSH Client mana yang terbaik untuk digunakan? - TortoisePLink satu atau OpenSSH?
Goober
Keduanya berfungsi, tetapi mungkin yang terbaik untuk digunakan dengan openSSH kecuali Anda memiliki alasan untuk melakukan sebaliknya - jika tidak, tetap menggunakan default.
Mark Embling
1

Anda dapat mengaturnya di bawah Cygwin :

Jika Anda menggunakan cygwin, Anda bisa melakukannya hanya di server dan menjalankan git-daemon di bawah cygwin, tetapi masih menggunakan msysgit pada klien.

Membuat git bekerja dengan baik dari cygwin

rkthkr
sumber
Perlu dicatat bahwa git-daemon hanya menyediakan akses menggunakan protokol git: // (bukan ssh atau file), dan bersifat read-only. Untuk menyediakan akses tulis, itu harus dilakukan melalui ssh atau sistem file (atau abstraksi di atasnya).
Mark Embling
Lebih detail: kernel.org/pub/software/scm/git/docs/…
Mark Embling
1

Gogs tentu patut dilihat: mudah digunakan (beberapa opsi instalasi yang didukung), lintas platform (termasuk Windows), ringan, open source.

Ben Mordue
sumber
Apakah kamu sudah mencobanya?
Janus Troelsen
1

Berikut ini beberapa opsi:

Lilith River
sumber
Saya tidak akan memberi Anda downvote tentang hal ini murni karena Anda mengungkapkan keterlibatan Anda. Tidak apa-apa, tetapi sebagai pengingat ramah, jika semua yang Anda lakukan adalah memposting tautan ke produk ini, maka Anda kemungkinan akan ditangguhkan karena melakukan spamming. Selain itu - selamat datang di Server Fault, semoga perjalanan Anda menyenangkan :-)!
Ben Pilbrow
Saya adalah pengguna yang sangat aktif dari StackOverflow - ini, bagaimanapun, adalah posting pertama saya ke ServerFault. Terima kasih atas sambutannya :)
Sungai Lilith
1
Ini bukan metode HANYA GUI - ada juga gitstack.com (saya tidak terlibat dalam proyek & belum mencobanya). Mungkin juga ada orang lain.
rjmunro
Harap dicatat bahwa jawaban ini lebih dari setahun, dan gitstack baru diperkenalkan beberapa bulan yang lalu.
Sungai Lilith
Crappy Environment pada Windows .... Kasihan pengguna windows Anda membayar dolar Anda untuk banyak omong kosong. :) Gunakan bonobogitserver.com Sebagai gantinya.
AmirHossein
0

Dan inilah alternatif server windows alternatif untuk git: WebGitNet

cregox
sumber
0

GitStack adalah yang saat ini saya evaluasi.

Saat saya memulai proses ini juga (menyiapkan Git server pada Windows), dan diskusi ini sudah lebih dari setahun, saya pikir saya akan menambahkannya ke dalam campuran.

RyanW
sumber
0

Periksa juga Gitwin - server Git yang mendukung OpenSSH untuk windows. Edisi gratis juga tersedia. Penafian: Saya adalah pengembang :-)

itefix
sumber
0

Gitlab adalah solusi hebat, dan termasuk antarmuka berbasis web. Untuk membuatnya berfungsi sesuai kebutuhan Anda.

  1. Aktifkan hyperV di server windows Anda
  2. Putar VM Linux
  3. Instal Gitlab di VM
Eric
sumber
Gitlab membutuhkan 2 pertunjukan ram, bukan ide yang masuk akal.
AmirHossein
0

Jika Anda memiliki tim pengembang 5-10, saya sarankan pergi dengan vanilla git dengan ssh. Mudah diatur dan Anda memiliki ssh untuk melindungi data saat transit.

Jika Anda memiliki beberapa tim dengan pergantian yang sehat, dengan asumsi Anda menjalankan direktori aktif Windows, Anda mungkin ingin mempertimbangkan bitbucket Atlassian. Kami menggunakan bitbucket terutama untuk persyaratan berikut: 1. Kelola repositori git sebagai proyek, di mana kami dapat menyediakan kontrol akses swalayan di tingkat proyek. 2. Integrasi login LDAP dengan sinkronisasi grup AD 3. Upaya administrasi yang sangat rendah

Chris Cheah
sumber
Jangan gunakan vanilla ssh di windows. Omong kosong.
AmirHossein