2015-12-10 18 views
6

varsayalım ben, son benim yerel şube aşağıdaki kaydedilmesini,otomatik

eski 17081fa olduğunu gelmiş 12ba64e

nasıl uzak bu hareketin itebilecek git sunucusu tek tek.

bir örnek almak,

I don't want to push all local commits at once. 

the push order should be 

17081fa -> 30854d2 -> ... -> 12ba64e 

Bu hareketin kaydedilmesini sunucuya zorlamaya hazırız, ancak teker teker itti gerek,

ben ne olduğunu bilmek gerekir

komut Benim böyle yapmasını sağlayabilirsiniz bastırıyor zaman, teşekkürler

* 12ba64e 
* 0fdf1a6 
* 75428a3 
* 00f837f 
* da9d16d 
* 3f34af9 
* b6066e9 
* cdf2dbf 
* 0d5cc8b 
* db8744c 
* df564b9 
* 30854d2 
* 17081fa 
+0

benim yerel makinede işlevselliğini test edebilmek değilim çünkü , itme uzak sunucuya tek tek taahhüt eder ve CI tetikleyebilir bana buggy hızlı bir şekilde – newBike

cevap

14

sadece tam refspec belirtebilirsiniz:

git push origin 17081fa:branchname 
git push origin 30854d2:branchname 
# etc 

bunu biraz otomatik hale getirmek isterseniz, sizin tuş bekler litte kabuk döngü yazabiliriz:

for hash in $(git rev-list 17081fa^..12ba64e); do 
    read -p "Pushing $hash. Press return to continue."; 
    git push origin $hash:branchname; 
done 
+0

serin, bu ne ihtiyacım var, – newBike

+0

vay, güzel açıklama, teşekkürler + 1 – Randroid

İlgili konular