Diese Präsentation wurde erfolgreich gemeldet.
Wir verwenden Ihre LinkedIn Profilangaben und Informationen zu Ihren Aktivitäten, um Anzeigen zu personalisieren und Ihnen relevantere Inhalte anzuzeigen. Sie können Ihre Anzeigeneinstellungen jederzeit ändern.

Git tutorial

2.962 Aufrufe

Veröffentlicht am

A quick tutorial of most commonly used git commands

Veröffentlicht in: Software
  • D0WNL0AD FULL ▶ ▶ ▶ ▶ http://1lite.top/XBvYd ◀ ◀ ◀ ◀
       Antworten 
    Sind Sie sicher, dass Sie …  Ja  Nein
    Ihre Nachricht erscheint hier
  • If you’re struggling with your assignments like me, check out ⇒ www.HelpWriting.net ⇐.
       Antworten 
    Sind Sie sicher, dass Sie …  Ja  Nein
    Ihre Nachricht erscheint hier
  • Did u try to use external powers for studying? Like ⇒ www.WritePaper.info ⇐ ? They helped me a lot once.
       Antworten 
    Sind Sie sicher, dass Sie …  Ja  Nein
    Ihre Nachricht erscheint hier

Git tutorial

  1. 1. Git Quick Tutorial Pikicast R&D Jack Pham
  2. 2. Git Commands Setting up a repository init, clone, config Saving changes add, commit Inspecting a repository status, log Navigate through commit and branch checkout Undo changes checkout, revert, reset, clean Rewriting history commit —ammend, rebase (rebase -i), reflog Syncing remote, fetch, pull, push Branching branch, checkout, merge * Need to use with caution, should never be done on public(share) target
  3. 3. Setup a repository and start working init clone
  4. 4. git vs svn
  5. 5. Git init git init git init --bare git clone
  6. 6. Saving changes add commit
  7. 7. Git repository local
  8. 8. Working Directory Stage Area File status git add git add git commit git rm Tracked
  9. 9. Common Git Routine (Local) - Edit-Stage-Commit $vim hello.js # Edit $ git add hello.js $ git commit # Edit commit message - Edit-Stage-Commit-Amend # Edit hello.js $ git add hello.js $ git commit --amend # Edit commit message ** Don’t amend commit that you already push to public repository
  10. 10. Viewing old commits log checkout
  11. 11. View log $ git log $ git log -n <limit> $ git log --oneline $ git log --stat $ git log -p $ git log --author=“<patterns>” $ git log <file> $ git log --graph --decorate --oneline $ git log --grep=“<patterns>”
  12. 12. git checkout branch git checkout master git checkout feature
  13. 13. git checkout commit git checkout master git checkout 81abc12 ** Don’t commit your work on a detach head
  14. 14. Checkout options git checkout <branch> git checkout <commit> git checkout <commit> <file> Example: git checkout master git checkout a12ebd3 git checkout a12ebd3 hello.js
  15. 15. Undoing changes checkout revert reset
  16. 16. git checkout to undo git checkout a1e8fb5 # modify files git add <file> git commit
  17. 17. git revert <commit> git revert abcd12ef Before revert After revert abcd12ef - The git revert command undoes a committed snapshot. - Undo the changes introduced by the commit - Appends a new commit with the resulting content. - git revert doesn't alter history
  18. 18. git reset abcd12ef abcd12ef Before reset After reset - Variation: - git reset <file> : remove from staging area - git reset : reset branch to most recent commit (soft) - git reset ——hard - git reset <commit> - git reset ——hard <commit> - git revert is “safe” way to undo - git reset “dangerous” to undo ** Don’t reset if you’ve already pushed to shared repository
  19. 19. revert vs reset - Don’t alter history - Safe way to undo but generate more commit - For undo shared/public commits - Alter history - unsafe way to undo shared/public commits - Cleaner history - For undo private (non-public) commits
  20. 20. Rewriting History commit --amend reflog rebase
  21. 21. git commit --amend - Modify last commit - Replace last commit entirely - Use to fix last commit (which hasn't pushed to share repo) - Variation - git commit --amend - git commit --amend --no-edit ** Don’t amend commit that you already push to public repository
  22. 22. git rebase <base> - Rebasing is the process of moving a branch to a new base commit. - Maintain linear history git rebase git merge
  23. 23. git reflog - What to do if you accidentally - git reset --hard - Reflog contain log of activity you perform
  24. 24. Remote synchronise and branching remote pull fetch push branch merge
  25. 25. git remote git remote git remote -v git remote add <name> <url> git remote rm <name> git remote rename <oldname> <new-name>
  26. 26. git fetch - Download commits from remote but not merge to local - Give you opportunity to review - Merge or rebase after review git fetch <remote> git fetch <remote> <branch>
  27. 27. git pull git fetch git merge git pull = git fetch + git merge git pull --rebase = git fetch + git rebase - Download commits from remote and merge (or rebase) to local branch
  28. 28. git push transfer commits from your local repository to a remote repo. git push <remote> git push <remote> —force git push <remote> -all git push <remote> --tags ** Do not use the --force flag unless you’re absolutely sure you know what you’re doing.
  29. 29. git branch Represented by a pointer (branch tip) git branch git branch <branch> git branch -d <branch> git branch -D <branch> git branch -m <branch>
  30. 30. git merge Putting forked history back together git branch -m <branch> git branch --no-ff <branch> fast-forward (git does this whenever possible) non-fast-forward (3-ways merge) (probably after rebase)
  31. 31. Cleaner history - Private branch: rebase & fast-forward merge - Share: 3-way merge - Atomic commit and meaningful message - Good naming convention
  32. 32. Staying out of troubles - Don’t amend commit that you already shared repository - Don’t commit your work on a detached head - Don’t reset if you’ve already pushed to shared repository - Don’t use the ‘push --force’ flag unless you’re absolutely sure you know what you’re doing.

×