Upload
ivdimova
View
232
Download
0
Tags:
Embed Size (px)
Citation preview
Git Tricks
Quick Bio
Branching
git pull git checkout -b new-feature-branch git add (-A) git commit -m “Our commit message” git merge branch-name -m “Mergemessage”
git diff <source_branch><target_branch>
Git Flow
Github Flow
Resolving
<<<<<<< HEAD
good
=======
bad
>>>>>>> merging-branch Pick the correct one Add and commit
git stash
- git status
git stash
git stash pop/apply
git blame
- git blame -L line from/line to
Rebase
git checkout feature-branch
git rebase master
Merge vs. Rebase
Rebase vs. Merge
git log -–pretty=onelinegit checkout -b new-clean-branchgit cherry-pick ab97540637691bd7...
git log
Reset vs. Revert
Revert vs. Reset
Submodules
git submodule add <submodule repo><path>
Lines in .gitmodules
Folder in the working directory
Clone a project withsubmodules
.gitmodules
git submodule init
git submodule sync
git submodule update (--recursive)
Remove a submodule
git rm --cached submodule_path git rm .gitmodules rm -rf submodule_path/.git git add submodule_path git commit -m "remove submodule
Update Submodules
cd submodule_dir git checkout master git pull cd ../.. git commit -am “Updated submoduleto version ..”
Tags
Tags vs. Branches
Tag = Stable version Branch = Development, Features
Work with tags
git tag git tag -l 'v1.4.2.*' git tag -a v1.8.6 -m 'Version1.8.6'
git show v1.86 git push origin v1.8.6
Resources
https://www.atlassian.com/git/tutorials/comparing-workflows/gitflow-workflow
https://guides.github.com/introduction/flow/
https://www.atlassian.com/git/tutorials/resetting-checking-out-and-reverting/commit-level-operations
http://nvie.com/posts/a-successful-git-branching-model/
http://wptavern.com/git-and-wordpress-3-tips-to-do-it-better
Contacts:
E-mail: [email protected]
Twitter: @iv_wp