tools
play

Tools git: Theory git: Use Git and (other) Tools for Cooperation - PowerPoint PPT Presentation

Tools git: Theory git: Use Git and (other) Tools for Cooperation git: Tools Project References Jrg Cassens, Rebekah Wegener, Jens Rademacher, Bastian Stender SoSe 2019 Lab Course Media Informatics SoSe 2019 Jrg Cassens, Rebekah


  1. Tools git: Theory git: Use Git and (other) Tools for Cooperation git: Tools Project References Jörg Cassens, Rebekah Wegener, Jens Rademacher, Bastian Stender SoSe 2019 Lab Course Media Informatics SoSe 2019 Jörg Cassens, Rebekah Wegener,Jens Rademacher, Bastian Stender – Tools 1 / 88

  2. Outline git: Theory Architectures git: Theory git 1 git: Use Architectures git: Tools git Project References git: Use 2 git: Tools 3 Project Management 4 SoSe 2019 Jörg Cassens, Rebekah Wegener,Jens Rademacher, Bastian Stender – Tools 2 / 88

  3. Use of and Requirements for Version Control git: Theory Architectures git Administer different versions of a file git: Use git: Tools Project References SoSe 2019 Jörg Cassens, Rebekah Wegener,Jens Rademacher, Bastian Stender – Tools 3 / 88

  4. Use of and Requirements for Version Control git: Theory Architectures git Administer different versions of a file git: Use git: Tools Log of changes Project What, References When, Who Possible to use previous versions Multi-user support Support branching, merging, redundancy SoSe 2019 Jörg Cassens, Rebekah Wegener,Jens Rademacher, Bastian Stender – Tools 3 / 88

  5. Outline git: Theory Architectures git git: Use git: Tools Project References Architectures SoSe 2019 Jörg Cassens, Rebekah Wegener,Jens Rademacher, Bastian Stender – Tools 4 / 88

  6. Architectures (1) git: Theory Architectures git git: Use git: Tools Local version control Project Versioning single files with simple administration (log, recover older versions of References file) Implementations : RCS, proprietary sofware First generation, not suitable for groups SoSe 2019 Jörg Cassens, Rebekah Wegener,Jens Rademacher, Bastian Stender – Tools 5 / 88

  7. Architectures (2) git: Theory Architectures git git: Use Central version control git: Tools Central server, development on clients Project Revision history on server References Rights management on server Implementations : CVS (abandoned), SVN Second generation, suitable for groups, needs server SoSe 2019 Jörg Cassens, Rebekah Wegener,Jens Rademacher, Bastian Stender – Tools 6 / 88

  8. Architectures (3) git: Theory Architectures Distributed version control git Every client has a repository git: Use No central server necessary git: Tools but primus inter pares possible Project Repositories update other repositories References Version history might be on every client Parallel development with (tool-supported) merge aferwards (non-linear development) Implementations : Mercurial, Git Third generation, suitable for groups, supports offline and non-linear development SoSe 2019 Jörg Cassens, Rebekah Wegener,Jens Rademacher, Bastian Stender – Tools 7 / 88

  9. Outline git: Theory Architectures git git: Use git: Tools Project References git SoSe 2019 Jörg Cassens, Rebekah Wegener,Jens Rademacher, Bastian Stender – Tools 8 / 88

  10. Features git: Theory Architectures git Distributed version control git: Use Originally developed by Linus Torvalds for the Linux kernel git: Tools Project no central server References Supporting non-linear development through branching and merging Lots of transport protocol options No incremental ID, but hash-values for commits Authentication with repository-hosting services (primus inter pares) ofen via private keys SoSe 2019 Jörg Cassens, Rebekah Wegener,Jens Rademacher, Bastian Stender – Tools 9 / 88

  11. (Dis-) advantages git: Theory Architectures git Advantages git: Use no central server git: Tools clean file system, only one “.git” directory in main directory Project efficient work through branch, diff, merge References Disadvantages Requires discipline Linux thinking, might be difficult coming from Windows Steep learning curve Slow performance with large (and binary) files SoSe 2019 Jörg Cassens, Rebekah Wegener,Jens Rademacher, Bastian Stender – Tools 10 / 88

  12. Outline git: Theory 1 git: Theory git: Use New Repository Standard Tasks 2 git: Use Remote-Repositories Branching New Repository Other Tutorial Standard Tasks git: Tools Remote-Repositories Project Branching References Other Tutorial git: Tools 3 4 Project Management SoSe 2019 Jörg Cassens, Rebekah Wegener,Jens Rademacher, Bastian Stender – Tools 11 / 88

  13. Outline git: Theory git: Use New Repository Standard Tasks Remote-Repositories Branching Other Tutorial New Repository git: Tools Project References SoSe 2019 Jörg Cassens, Rebekah Wegener,Jens Rademacher, Bastian Stender – Tools 12 / 88

  14. Initialisation & .gitignore git: Theory git: Use New Repository Standard Tasks Remote-Repositories New repositories: Branching Other git init (local in project directory, creates “.git”) Tutorial git --bare init (remote repository) git: Tools Keeping files or file types out of version control: Project References text file .gitignore in main directory One rule per line ( *.pdf ) SoSe 2019 Jörg Cassens, Rebekah Wegener,Jens Rademacher, Bastian Stender – Tools 13 / 88

  15. git: Theory git: Use New Repository Standard Tasks Remote-Repositories Branching Other Tutorial git: Tools Project References Workflow SoSe 2019 Jörg Cassens, Rebekah Wegener,Jens Rademacher, Bastian Stender – Tools 14 / 88

  16. Outline git: Theory git: Use New Repository Standard Tasks Remote-Repositories Branching Other Tutorial Standard Tasks git: Tools Project References SoSe 2019 Jörg Cassens, Rebekah Wegener,Jens Rademacher, Bastian Stender – Tools 15 / 88

  17. Base Functions File-Status: git: Theory Untracked (not under version control) git: Use Modified (New) (changed since last commit) New Repository Staged (marked for commit) Standard Tasks Remote-Repositories Unmodified (unchanged since last commit) Branching Other Read status: Tutorial git status git: Tools Project Add or stage files: References git add FILE(S) Commit: git commit -m “Comment“ Stage (deleted & modified) & Commit: git commit -a -m “Comment“ Show differences to HEAD: git diff HEAD SoSe 2019 Jörg Cassens, Rebekah Wegener,Jens Rademacher, Bastian Stender – Tools 16 / 88

  18. git: Theory git: Use New Repository Standard Tasks Remote-Repositories Branching Other Tutorial git: Tools Project References lifecycle SoSe 2019 Jörg Cassens, Rebekah Wegener,Jens Rademacher, Bastian Stender – Tools 17 / 88

  19. Revert changes git: Theory git: Use New Repository Standard Tasks Remote-Repositories Revert changes of last commit, keep commit Branching Other git revert Tutorial HEAD-pointer to named commit git: Tools git revert COMMIT Project References Stage/working directory to status of last commit git reset SoSe 2019 Jörg Cassens, Rebekah Wegener,Jens Rademacher, Bastian Stender – Tools 18 / 88

  20. Outline git: Theory git: Use New Repository Standard Tasks Remote-Repositories Branching Other Tutorial Remote-Repositories git: Tools Project References SoSe 2019 Jörg Cassens, Rebekah Wegener,Jens Rademacher, Bastian Stender – Tools 19 / 88

  21. Remote-Repositories git: Theory git: Use New Repository make local copy of remote repository: Standard Tasks Remote-Repositories git clone URL Branching Other add remote repository: Tutorial git: Tools git remote add REMOTENAME URL Project transfer local changes to remote repository: References git push REMOTENAME BRANCH REMOTENAME is ofen origin Standard-Branch is master SoSe 2019 Jörg Cassens, Rebekah Wegener,Jens Rademacher, Bastian Stender – Tools 20 / 88

  22. Outline git: Theory git: Use New Repository Standard Tasks Remote-Repositories Branching Other Tutorial Branching git: Tools Project References SoSe 2019 Jörg Cassens, Rebekah Wegener,Jens Rademacher, Bastian Stender – Tools 21 / 88

  23. Branching git: Theory create branch git: Use New Repository git branch NAME Standard Tasks Remote-Repositories show all branches Branching Other git branch -a Tutorial change to branch git: Tools Project git checkout NAME References merge branch with master git checkout master (change into master) git merge NAME (Merge) delete branch git branch -d NAME SoSe 2019 Jörg Cassens, Rebekah Wegener,Jens Rademacher, Bastian Stender – Tools 22 / 88

  24. Branches git: Theory git: Use New Repository Standard Tasks Remote-Repositories Branching Other Tutorial git: Tools Project References working with branches SoSe 2019 Jörg Cassens, Rebekah Wegener,Jens Rademacher, Bastian Stender – Tools 23 / 88

  25. Outline git: Theory git: Use New Repository Standard Tasks Remote-Repositories Branching Other Tutorial Other git: Tools Project References SoSe 2019 Jörg Cassens, Rebekah Wegener,Jens Rademacher, Bastian Stender – Tools 24 / 88

  26. Setting and help git: Theory git: Use New Repository Standard Tasks Remote-Repositories (Global) settings Branching Other git config [--global] user.name “John Doe“ Tutorial git config [--global] user.email john@example.com git: Tools git config [--global] core.autocrlf input (Linux) Project Help References git COMMAND --help SoSe 2019 Jörg Cassens, Rebekah Wegener,Jens Rademacher, Bastian Stender – Tools 25 / 88

  27. Outline git: Theory git: Use New Repository Standard Tasks Remote-Repositories Branching Other Tutorial Tutorial git: Tools Project References SoSe 2019 Jörg Cassens, Rebekah Wegener,Jens Rademacher, Bastian Stender – Tools 26 / 88

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend