Dün epey bir programlama günüydü ve git deposuyla bir çatışma beni hemant deposu tam bir listeye sahip olduğum yer 400'den fazla komut paragraf GitHub/Git En çok kullanılanlar olarak kabul edilen her birine kullanımlarının bir açıklaması eşlik eder. Ne olduğu hakkında hiçbir fikrin yoksa GitHub ya da sadece yüklemede sorun yaşadıysanız, GitHub'ı kullanmak için hızlı kılavuz bu kesinlikle tüm şüpheleri ortadan kaldıracaktır.
Günlük kullanım için Git yardımı, git'i günlük kullanmak için 20'den az komut.
git yardım et her gün
Git Yardım kılavuzunu göster
git yardım et -g
Çekme üzerine yaz
git getir - hepsi && git sıfırlama - sabit kökeni / ana
Bir işleme kadar tüm dosyaların listesi
git ls-tree - yalnızca-ad -r <taahhütlü>
İlk işlemeye referansı güncelleyin
git update-ref -d KAFA
Çakışan tüm dosyaların listesi
git fark - yalnızca ad --diff filtresi = U
Kaydetmede değiştirilen tüm dosyaların listesi
git diff-tree --no-commit-id - sadece-ad -r <taahhütlü>
Son işlemden bu yana yaptığınız değişiklikleri görün
git fark
Hazırladığınız değişiklikleri son taahhüdünüzle karşılaştırın
git diff - önbelleğe alınmış
Günlüğe kaydedilen ve kaydedilmeyen değişiklikler arasındaki farkı gösterir
git fark KAFA
Master'ınızla zaten birleşmiş olan tüm dalları listeleyin
git şube - birleştirilmiş usta
Hızlı bir şekilde önceki şubeye geçin
git ödeme -
Ana ile zaten birleştirilen dalları kaldırın
git şube - birleştirilmiş usta | grep -v '^ \ *' | xargs -n 1 git dalı -d
Tüm şubeleri ve şubeyle olan son taahhütlerini listeleyin
git şube -vv
Şubeyi takip et
git şube -u kökeni / şubem
Yerel bir şubeyi silin
git şube -d <yerel_şube adı>
Uzak bir dalı silme
git itme kaynağı - silme <uzak_dal adı>
Baştaki en son içerikle yerel değişiklikleri geri alın
git checkout - <dosya adı>
Yeni bir kaydetme oluşturarak bir kaydı geri alın
git geri dön <taahhütlü>
Yalnızca özel şubelerde önerilen bir taahhüdü iptal edin
git sıfırla <taahhütlü>
Önceki kaydetme mesajını değiştir
git commit -v --değiştir
Yazarı Değiştirin
git commit --amend --author ='Yazar Adı'
Yazar genel ayarlarda değiştirildikten sonra yazarı sıfırlayın
git commit --amend --reset-yazar --no-edit
Uzak URL'yi değiştirin
git uzak set-url kaynağı <URL>
Tüm uzak referansların bir listesini alır
git uzaktan
Alternatif:
git uzaktan göster
Tüm yerel ve uzak şubelerin bir listesini alın
git şube -a
Uzak dalların bir listesini alın
git şube -r
Tüm dosya yerine bir dosyanın değişen kısımlarını ekleyin
git eklenti -p
Tamamlanmış denemeleri bulun
kıvrılma http://git.io/vfhol > ~/.git-tamamlama.bash && kaçırmak '[-f ~ / .git-complete.bash] &&. ~ / .git-complete.bash' >> ~/.bashrc
Son 2 haftadaki değişiklikleri gösterir
git log --no-merges --raw --since ='2 hafta önce'
alternatifler:
git whatchanged --since ='2 hafta önce'
Ana çatalların tüm kayıtlarını görüntüleyin
git log - no-merges --stat --reverse master ..
Cherry-pick kullanarak şubeler arası taahhütleri seçme
git ödeme <şube adı> && git kiraz çekme <taahhütlü>
Commit hash içeren dalları bulun
git şube -a - içerir <taahhütlü>
Alternatif:
git şube --içerir <taahhütlü>
Git takma adları
git yapılandırma -- küresel takma ad.<sap> <komuta>
git yapılandırma -- küresel takma ad.st durumu
Yürütülen işi hızlı ve geçici olarak kaydedin (saklayın)
git zula
Alternatif:
git zula kaydet
Hazırlanmamış olanlar da dahil olmak üzere tüm dosyaları saklayın.
git zula kaydet -u
Alternatif:
git stash save --include-izlenmeyen
Tüm stasheado dosyalarının listesini göster
git zula listesi
Aşamalı listeden silmeden herhangi bir aşamalı değişikliği kullanın
git stash başvur <stash @ {n}>
Zula değişikliklerini yeniden uygulayın ve zula listesinden kaldırın
git zula pop
alternatifler:
git stash stash @ {0} uygulayın && git stash bırak zula @ {0}
Saklanan tüm zulaları sil
git temizle
alternatifler:
git zula bırak <stash @ {n}>
Saklanmış belirli bir dosyayı alın
git ödeme <stash @ {n}> -- <dosya yolu>
Alternatif:
git checkout stash @ {0} - <dosya yolu>
Hazırlanan tüm dosyaları göster
git ls-dosyaları -t
Hazırlanmamış tüm dosyaları göster
git ls dosyaları - diğerleri
Yok sayılan tüm dosyaları göster
git ls-dosyaları - diğerleri -i --exclude-standard
Yeni bir depo çalışma ağacı oluşturun (git 2.5)
git worktree eklentisi -b <şube adı> <yol> <başlangıç noktası>
HEAD'den yeni bir çalışma ağacı oluşturun
git worktree ekle --detach <yol> KAFA
Yerel depodan silmeden git deposundaki bir dosyayı silin
git rm - önbelleğe alınmış <dosya yolu>
Alternatif:
git rm - önbelleğe alınmış -r <klasör yolu>
Ham dosyaları silmeden önce, bu dosyaların listesini almak için bir test sürüşü yapın.
git temiz -n
Hazırlanmamış dosyaların silinmesini zorla
git temiz -f
Hazırlanmamış dizinleri kaldırmaya zorla
git temiz -f -d
Alternatif:
git temiz -df
Tüm alt modülleri güncelleyin
git alt modülü foreach git çekme
Ana dalda birleştirilmemiş olan tüm değişiklikleri gösterir.
git kiraz-v usta
Alternatif:
git kiraz-v usta <şube birleştirilecek>
Şubeyi yeniden adlandırın
git şube -m <yeni-şube-adı>
Alternatif:
git şube -m [<eski dal adı>] <yeni-şube-adı>
"Özelliği" güncelleyin ve birleştirilmiş "ana" olun
git ödeme özelliği && git rebase @ {- 1} && git checkout @ {- 2} && git merge @ {- 1}
Ana dalı arşivleyin
git arşiv yöneticisi --format = zip --output = master.zip
Rapor mesajını değiştirmeden önceki kaydı değiştir
git add - hepsi && git commit --değiştir --no-edit
Artık kaynakta bulunmayan uzak dalları silin
git getir -p
Alternatif:
git uzaktan erik kaynağı
Kaydetme karmasını ilk revizyondan alın
git rev-list - ters KAFA | kafa -1
Sürüm ağacını görüntüleyin
git log --pretty = oneline --graph --decorate --all
Alternatif:
gitk - hepsi
Kovanı kullanarak bir arşive proje ekleyin
git alt ağaç ekle --prefix =<dizin_adı>/<proje Adı> --squash git@github.com:<kullanıcı adı>/<proje Adı>.git usta
Alt ağaç kullanarak bağlantılı bir proje için deponuzdan en son değişiklikleri alın
git subtree çekme --prefix =<dizin_adı>/<proje Adı> --squash git@github.com:<kullanıcı adı>/<proje Adı>.git usta
Bir dalı ve geçmişini bir dosyaya aktarın
git paketi oluştur <dosya> <şube adı>
Bir paketten içe aktar
git klon repo.bundle <repo-dir> -b <şube adı>
Geçerli şubenin adını alır
git rev-ayrıştırma --abbrev-ref KAFA
Zaten kaydedilmiş bir dosyayı yok sayın (örn. Değişiklik günlüğü).
git update-index --assume-unchanged Değişiklik; git taahhüt -a; git update-index --no-assume-unchanged Değişiklik günlüğü
Yeniden düzenlemeden önce Stashea değişiklikleri
git rebase --autostash
Yerel şubede id ile ara
git getirme kaynağı çekme /<id>/ head:<şube adı>
alternatifler:
git çekme orijinli çekme /<id>/ head:<şube adı>
Mevcut şubenin en son etiketlerini gösterir
git define --tags --abbrev = 0
Farklılıkları arayın.
git fark - sözcük farkı
İzleme dosyasındaki değişiklikleri yoksay
git güncelleme-indeksi --assume-değişmedi <dosya adı>
Geri alma
git güncelleme-indeksi - no-assume-unchanged <dosya adı>
Dosyaları temizle .gitignore
.
git temiz -X -f
Silinen dosyayı geri yükleyin.
git ödeme <silme_taahhüdü>^ - <dosya yolu>
Dosyaları belirli bir kesinleştirme karmasıyla geri yükleyin
git ödeme <taahhütlü> -- <dosya yolu>
Birleştirme yerine her zaman yeniden düzenleyin
git config --global branch.autosetuprebase her zaman
Tüm takma adları ve ayarları listeleyin
git config - liste
Büyük / küçük harf duyarlı yap
git yapılandırma --global core.ignorecase yanlış
Kendini düzeltme türleri.
git yapılandırma -- küresel yardım et.otomatik düzeltme 1
Değişikliğin bir sürümün parçası olup olmadığını kontrol eder.
git name-rev - yalnızca ad <SHA-1>
Temiz Kuru çalıştırma.
git temiz -fd --dry-run
Kaydetmeyi önceki işleme için bir çözüm olarak işaretle
git taahhüdü -- düzeltme <SHA-1>
Squash düzeltme
git rebase -i --autosquash
İşleme sırasında hazırlık alanını atlayın.
git taahhüt -am <mesaj vermek>
Yok sayılan dosyaları listeleyin
git kontrol-yoksay *
Göz ardı edilen dosyaların durumu
git durumu - imzalı
Şube1'deki Şube2'de olmayan İşlemler
git log Branch1 ^ Branch2
önceki çatışma çözümlerini kaydedin ve yeniden kullanın
git config --global referans.enabled 1
Tüm çakışan dosyaları bir Editör'de açın.
git fark - yalnızca ad | tek | xargs $ EDITOR
Hazırlanmamış nesnelerin sayısını ve diskteki tüketimini sayın.
git sayım nesneleri - insan tarafından okunabilir
Erişilemeyen nesnelerin bakımı
git gc --prune = şimdi - agresif
Deponuzu gitweb'de anında görüntüleyin.
git instaweb [--yerel] [--httpd=<httpd>] [--Liman=<Liman>] [--tarayıcı=<tarayıcı>]
Onay günlüğünde GPG imzalarını görüntüleyin
git log --göster-imza
Girdileri genel ayarlardan kaldırır.
git yapılandırma --global --unset <giriş adı>
Geçmişi olmayan yeni bir şube edinin
git ödeme -- yetim <şube_adı>
Üretim dosyası ile dosyanın en son sürümü arasındaki farkı görüntüler.
git diff - aşamalı
Başka bir şubeden bir dosya çıkarın.
git göster <şube_adı>:<dosya adı>
Yalnızca kökü listeleyin ve birleştirmeyi onaylayın
git log --ilk ebeveyn
İki kaydetme arasında birleştirme
git rebase --interactive HEAD ~ 2
Tüm şubeleri listeleyin
git ödeme yöneticisi && git şube - birleştirilmemiş
İkili aramayı kullanarak bul
git bisect başlat git bisect kötü git bisect iyi v2.6.13-rc2 git bisect kötü git bisect iyi git bisect reset
Belirli bir dosyanın taahhütlerini ve değişikliklerini listeleyin
git log --follow -p - <dosya yolu>
Tek bir dalı klonlayın
git klon -b <şube adı> - tek dal https://github.com/user/repo.git
Yeni bir şube oluşturun ve yeni bir şubeye geçin
git ödeme -b <şube adı>
Kaydetmelerde değişiklik olan dosyaları yoksay
git yapılandırma core.fileMode yanlış
Komutların mükemmel derlenmesi 😉
Mükemmel katkı !!