Skip to content

Instantly share code, notes, and snippets.

@mesuutt
Last active September 15, 2018 08:30
Show Gist options
  • Save mesuutt/4564848 to your computer and use it in GitHub Desktop.
Save mesuutt/4564848 to your computer and use it in GitHub Desktop.
Git notları

Neden git pull değilde git pull --rebase kullanılmalı

http://stackoverflow.com/a/7200641/1027507

Dosyaları silmeden son yapılan commiti silmek

git reset --soft HEAD~1

Remoteda olup localde olmayan branchi indirip üzerinde çalışmaya başlamak

git fetch
git checkout --track origin/newFeature

Remotedan silinen fakat localde hala bulunan branchleri silmek

git remote prune origin

Son yapılan commit mesajını değiştirmek

git commit --amend

Acil değişiklik Bir iş üzerinde çalışırken, başka bir acil iş cıktığında üzerinde çalışılan dosyalar stashlenerek acil olan iş halledilir. git status ile bakıldığında sanki dosyalar hiç düzenlenmemiş gibi görünür. Acil iş yapılır commit edildikten sonra stash pop edilip eski kalınan yerden devam edilir. git stash

Conflict dosyalar:

  • Merge edilen branchdeki değişiklikleri kabul et

    git checkout --theirs file.txt
  • Bendeki değişiklikleri kabul et

    git checkout --ours file.txt

Branchler arası commit transferi

cherry-pick ile bir branchdeki bütün commitleri çekmek yerine sadece lazım olan cimmit çekilebilir.bak

Localde olmayıp remote'da olan branchi checkout etmek

$ git remote update
$ git fetch
$ git checkout -b hede origin/hede

Yapılmış olan bir commite yeni değişikleri ekleme:

 git ci --amend -C HEAD

Bu inexde olan dosyaları yapılmış olan commit e ekler

Projeden silinmiş dosyaları index'e ekleme

git ls-files --deleted | xargs git rm

How to modify a specified commit

http://stackoverflow.com/questions/1186535/how-to-modify-a-specified-commit

Branchler arası diff

git diff master..feature foo.py

Untracket dosyalar hariç modified dosyaları index'e eklemek

git add -u

Push edilmemiş commitleri görmek

git log --branches --not --remotes

log --stat parametresi Loglarda olan değişiklikleri loga ek olarak +- olarak görmemizi sağlıyor. Buna benzer bir kaç parametre daha var man pagelerde.

 git log --stat

Remote urli gösterme- değiştirme

$ git remote -v
$ git remote set-url origin git://repo_address.git

Önceden yapılmış bir commit üzerinde çalışmak

git rebase --interactive cıkan ekranda pick yazan yeri edit ile değiştirip save yap(Daha fazla seçenekte var. edit yazılan yerde o seçeneklerde var). Değişiklikler bittikten sonrada.

$ git checkout --amend
$ git rebase --continue

Stash'in içeriğini görmek

git stash show -p stash@{0}

Commit mesajları içinde arama yapmak

--grep=

Remote'dan silinmiş branchleri localden de silmek

$ git remote prune origin --dry-run #bul 
$ git remote prune origin # sil

Local branchde yapılan bütün değişiklikleri iptal etmek. Local branchi remote ile yenilemek

git reset --hard origin/myBranch

En son çalışılan branche hızlı geçiş. Bashdeki gibi

$ git checkout master
#Switched to branch 'master'
$ git checkout -
#Switched to branch 'develop'

Bir branch/commit'in içindeki dosyaya bakmak:

$ git show {commit_id | branch}:contents/models.py
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment