Katakanlah saya memiliki pc desktop dan laptop, dan terkadang saya bekerja di desktop dan terkadang saya bekerja di laptop.
Apa cara termudah untuk memindahkan repositori git bolak-balik?
Saya ingin repositori git identik, sehingga saya dapat melanjutkan tempat yang saya tinggalkan di komputer lain.
Saya ingin memastikan bahwa saya memiliki cabang dan tag yang sama di kedua komputer.
Terima kasih Johan
Catatan: Saya tahu bagaimana melakukan ini dengan SubVersion, tapi saya penasaran bagaimana ini akan bekerja dengan git. Jika lebih mudah, saya dapat menggunakan pc ketiga sebagai server klasik yang dapat disinkronkan oleh dua pc: s.
Catatan: Kedua komputer menjalankan Linux.
Pembaruan :
Jadi mari kita coba ide XANI: s dengan repo git kosong di server, dan sintaks perintah push dari KingCrunch. Dalam contoh ini ada dua klien dan satu server.
Jadi mari kita buat bagian server dulu.
ssh user@server
mkdir -p ~/git_test/workspace
cd ~/git_test/workspace
git --bare init
Jadi dari salah satu komputer lain saya mencoba mendapatkan salinan repo dengan klon:
git clone user@server:~/git_test/workspace/
Initialized empty Git repository in /home/user/git_test/repo1/workspace/.git/
warning: You appear to have cloned an empty repository.
Lalu masuk ke repo itu dan tambahkan file:
cd workspace/
echo "test1" > testfile1.txt
git add testfile1.txt
git commit testfile1.txt -m "Added file testfile1.txt"
git push origin master
Sekarang server diperbarui dengan testfile1.txt.
Bagaimanapun, mari kita lihat apakah kita bisa mendapatkan file ini dari komputer lain.
mkdir -p ~/git_test/repo2
cd ~/git_test/repo2
git clone user@server:~/git_test/workspace/
cd workspace/
git pull
Dan sekarang kita bisa melihat testfile.
Pada titik ini kita dapat mengeditnya dengan lebih banyak konten dan memperbarui server lagi.
echo "test2" >> testfile1.txt
git add testfile1.txt
git commit -m "Test2"
git push origin master
Kemudian kita kembali ke klien pertama dan melakukan git pull untuk melihat file yang diperbarui. Dan sekarang saya dapat berpindah-pindah antara dua komputer, dan menambahkan komputer ketiga jika saya mau.