Skip to content

Instantly share code, notes, and snippets.

@ih4cku
Created August 16, 2015 16:28
Show Gist options
  • Select an option

  • Save ih4cku/6fa8bd4293ae4e5c0ce3 to your computer and use it in GitHub Desktop.

Select an option

Save ih4cku/6fa8bd4293ae4e5c0ce3 to your computer and use it in GitHub Desktop.

Revisions

  1. ih4cku created this gist Aug 16, 2015.
    142 changes: 142 additions & 0 deletions git-workflow.md
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,142 @@
    # working tree
    - A "working tree" consist of files that you are currently working on.

    # commits
    - a snapshot of
    + a [directory tree](a)
    + files within (a)
    + some metadata
    * parents
    * commiter
    * date
    * comment
    * etc.

    # git commands are divided into high level ("porcelain") commands and low level ("plumbing") commands

    ## plumbing
    - commands that do low-level operations.
    - 'fundamental' operations, upon which git is built.

    ## porcelain
    - a cute name for end-user operations.
    - cover the plumbings to make it look and act pretty.
    - high-level operations.

    # GIT
    - http://alx.github.io/gitbook/
    - http://www.ralfebert.de/tutorials/git/
    - http://eagain.net/articles/git-for-computer-scientists/
    - http://www.sbf5.com/~cduan/technical/git/
    - http://juristr.com/blog/2013/04/git-explained/
    - http://code.tutsplus.com/categories/git
    - https://www.kernel.org/pub/software/scm/git/docs/giteveryday.html
    - https://ideas-productivity.org/resources/howtos/git-tutorial-and-reference-collection/
    - http://tednaleid.github.io/showoff-git-core-concepts/
    - http://stackoverflow.com/questions/315911/git-for-beginners-the-definitive-practical-guide
    - http://www.git-tower.com/blog/understanding-branches-in-git/
    - https://danielmiessler.com/study/git/
    - https://www.atlassian.com/git/tutorials/using-branches
    - http://wildlyinaccurate.com/a-hackers-guide-to-git/
    - https://www.reddit.com/r/git/comments/1tz1vp/please_stop_using_git_matthew_mccullough_oscon/
    - http://www.ruanyifeng.com/blog/2015/08/git-use-process.html
    - https://www.kernel.org/pub/software/scm/git/docs/gittutorial.html
    - http://rypress.com/tutorials/git/index
    - http://githowto.com/
    - http://backlogtool.com/git-guide/en/
    - https://www.mindmeister.com/zh/12761394/learning-git
    - https://github.com/xirong/my-git
    - https://jwiegley.github.io/git-from-the-bottom-up/
    - http://www.slant.co/topics/517/~what-is-the-best-resource-to-learn-git
    - http://stackoverflow.com/questions/3329943/git-branch-fork-fetch-merge-rebase-and-clone-what-are-the-differences

    - [Git两分钟指南](http://blog.jobbole.com/78999/)
    -

    ## workflow
    `git-flow`
    - http://nvie.com/posts/a-successful-git-branching-model/
    - http://jeffkreeftmeijer.com/2010/why-arent-you-using-git-flow/
    - http://bryanpendleton.blogspot.com/2014/06/the-great-git-workflow-discussion.html
    - http://stackoverflow.com/questions/18188492/what-are-the-pros-and-cons-of-git-flow-vs-github-flow
    - http://www.quora.com/search?q=git+workflow
    - http://stackoverflow.com/search?q=git+workflow
    - http://programmers.stackexchange.com/search?q=git+workflow
    - https://sandofsky.com/blog/git-workflow.html
    - http://stackoverflow.com/questions/2621610/what-git-branching-models-work-for-you
    - http://stackoverflow.com/questions/13432423/git-philosophy-how-to-get-master-branch-to-production-branch
    - http://stackoverflow.com/questions/13444398/how-to-minimize-git-merge-conflicts
    - https://guides.github.com/introduction/flow/index.html
    - http://www.toptal.com/git/git-workflows-for-pros-a-good-git-guide
    - http://blog.endpoint.com/2014/05/git-workflows-that-work.html
    - http://documentup.com/skwp/git-workflows-book
    - http://stackoverflow.com/questions/19695127/git-workflow-review
    - https://www.atlassian.com/git/tutorials/comparing-workflows
    - http://blog.osteele.com/posts/2008/05/my-git-workflow/
    - http://stackoverflow.com/questions/20956154/whats-the-workflow-to-contribute-to-an-open-source-project-using-git-pull-reque
    - [Git工作流指南](http://blog.jobbole.com/76843/)
    - [Git版本控制与工作流](http://blog.jobbole.com/87410/)
    - [Git 使用规范流程](http://blog.jobbole.com/88955/)
    - [Git远程操作详解](http://blog.jobbole.com/71091/)
    - [一些实用的GitHub模式](http://blog.jobbole.com/43288/)
    - http://githubflow.github.io/
    - http://stackoverflow.com/questions/2428722/git-branch-strategy-for-small-dev-team
    - http://stackoverflow.com/questions/8358526/git-workflow-and-release-branches-many-one-or-none
    - http://x-team.com/2013/09/our-git-workflow-forks-with-feature-branches/
    - https://datasift.github.io/gitflow/IntroducingGitFlow.html
    - http://danielkummer.github.io/git-flow-cheatsheet/
    - http://yakiloo.com/getting-started-git-flow/
    - http://endoflineblog.com/gitflow-considered-harmful
    - http://blog.talles.me/that-git-flow.html
    - http://www.infoworld.com/article/2909346/application-development/improving-on-git-flow-for-continuous-delivery.html
    - http://whilefalse.blogspot.com/2013/02/branching-is-easy-so.html
    - https://github.com/nvie/gitflow
    - http://stackoverflow.com/questions/16562339/git-flow-and-master-with-multiple-parallel-release-branches


    ## caret and tilde
    - http://www.paulboxley.com/blog/2011/06/git-caret-and-tilde
    - http://stackoverflow.com/questions/2221658/whats-the-difference-between-head-and-head-in-git

    ## terminology
    - http://stackoverflow.com/questions/7076164/terminology-used-by-git
    - https://www.kernel.org/pub/software/scm/git/docs/gitglossary.html
    - http://longair.net/blog/2012/05/07/the-most-confusing-git-terminology/
    - http://ntraft.com/git-glossary/

    ## internals
    - https://git-scm.com/book/en/v2/Git-Internals-Plumbing-and-Porcelain
    - http://grimoire.ca/git/theory-and-practice/
    - https://www.linkedin.com/pulse/git-internals-how-works-kaushik-rangadurai
    - http://teohm.com/blog/2011/05/30/learning-git-internals-by-example/
    - https://en.wikibooks.org/wiki/Git/Internal_structure
    - https://lostechies.com/jamesgregory/2009/11/27/git-guts-merging-and-rebasing/

    ## videos
    - https://www.youtube.com/watch?v=ZDR433b0HJY
    - https://www.youtube.com/watch?v=idLyobOhtO4
    - https://www.youtube.com/watch?v=Y9XZQO1n_7c
    - https://www.youtube.com/watch?v=bwQqz3cb1Jc

    - http://www.pluralsight.com/

    - they explain `git` as if you already understand *how git works*.

    # Github
    - https://help.github.com/articles/github-glossary/
    - http://stackoverflow.com/questions/6286571/git-fork-is-git-clone
    - http://bryanpendleton.blogspot.com/2014/07/git-clone-vs-fork.html
    - https://gun.io/blog/how-to-github-fork-branch-and-pull-request/
    - https://nathanhoad.net/git-workflow-forks-remotes-and-pull-requests


    git has many troublesome parts:
    - semantic conflicts

    http://jeffkreeftmeijer.com/2010/why-arent-you-using-git-flow/

    https://guides.github.com/features/issues/
    G:github "issue tracking"
    http://scottchacon.com/2011/08/31/github-flow.html
    https://about.gitlab.com/2014/09/29/gitlab-flow/
    \https://www.youtube.com/playlist?list=PLTgRMOcmRb3MdUwwF0j-bpFZuJt0kpmgp