Geliştirme ortamımda klonladığım 5 repos ile çalışıyorum. Ben bir git repo güncelleştirmek istediğinizde , ben klasör/home/Adrian/repo1 girmek/ve yapın:3 Git komutlarını güncelleştirmek için bir kabuk komut dosyası hazırlayın
git ödeme ana git çekme kökenli usta
Ama sonra, her sabah yapmam gereken diğer 4 repos için aynı şey. Bu oldukça zahmetli.
Bunu bir kabuk betiğine koyabilir miyim? Yani, bu komutları kabuk betiğinde yazıp çalıştırırsam, tüm reposları güncelleyebilir miyim?
Böyle bir şey yazmaya düşünüyordum ...
cd repo1
git checkout master
git pull origin master
cd ..
cd repo2
git checkout master
git pull origin master
cd ..
(i linux kulüpler)
Düzenleme: Belki bu ne düşündüğümü daha zordur. Çoğu zaman "git asıl asıl ustası" yaptığımda, "yerel değişikliklerin .... birleşme ile üzerine yazılacağı" gibi erorrs'ları alırım. Yani ben .. İlgili şube içine girip şeyler saklamak zorunda
Düzenleme 2:
Ne bir çakışma olursa, bunu görmezden ve sonraki repo gitmek edilir yapmayı düşünüyorum
cd repo1
git checkout master
git pull origin master
(if there is conflict, ignore and go to the next line but dont stop here)
cd ..
cd repo2
git checkout master
git pull origin master
cd ..
Ancak, parantez içinde olayı nasıl yazacağımı bilmiyorum.
ne varsa Ödeme yapmaya çalıştığınızda başka şubede yapılan değişiklikler, ne zaman çekerseniz çatışmalar yaşarsınız? e prensipte yapmak istediğiniz şeyle yanlış bir şey değildir, ancak komutlarınızın neden başarısız olabileceğini (ve sonra ne yapacağınızı) düşünmeniz gerekir. – bengoesboom
Evet, bunu dikkate almalıyım. Onu Düzenle’de yazdım. Prensip olarak, bir çatışma ortaya çıkarsa, saklanmalıdır. Bunun nedeni, her gece ayrılmadan önce ve eşyalarımı taahhüt ettikten sonra ve çekme reqsimi yaptıktan sonra, her şeyin düzgün ve güncellenmiş olduğunu kontrol ediyorum, ama evet, gerçekte, sabahları herhangi bir şey olabilir ve belki de bir yere gitmem gerekiyor .. – ado
Sanırım her gün uzaktan takip etmeyi, 's''n'de' s''nü kullanarak bir yol izlemeyi düşünüyorsun. Gerçekten 'git' bir dvs, işinizi yerel olarak yapabilir ve basmadan önce' git pull --rebase' 'yi yayınlayabilirsiniz. Kaynağı uzaktaki kaynaktan çekecek ve değişiminizi ona uygulayacak, çatışmaya neden olabilir, ancak çözülebilir. – dyng