Skip to content

Instantly share code, notes, and snippets.

@mcattx
Created February 8, 2017 07:53
Show Gist options
  • Save mcattx/51df88b85471b1472b98f2b7018edfc9 to your computer and use it in GitHub Desktop.
Save mcattx/51df88b85471b1472b98f2b7018edfc9 to your computer and use it in GitHub Desktop.
An internal speech for spreading git

#Git 101

为什么我们要换到 Git

  • Git 和 SVN 的区别
    1. git 合并操作保留原有的提交过程, svn 合并操作把来源多个提交合并成一个(这样对比起来很麻烦,像 git 有好用的 diff 工具,可以比对某行代码的提交时间和作者,svn 追踪起来很麻烦)
    2. git 是分布式的版本控制系统,svn 是集中式版本的控制系统。(git 的服务器只是方便大家交换彼此的修改,没有git 服务器也是可以干活的)
  • Git 比 SVN 好在哪里
    1. diff
    2. 冲突解决(令人蛋碎的树冲突!)
    3. 非常容易进行 code review
    4. 快!快如闪电!再也不会发生 copy 个文件夹可以泡个咖啡上个厕所
    5. 配套设施支持 markdown/issue !
    6. 断电了还可以继续开发!不用等服务器恢复
    7. 小步提交/合并提交
    8. 本地提交/回滚
    9. Tag
    10. branch/commit (每一步修改可以commit,每一个小功能/fix 都可以branch)

Git原理的简单说明

Git 的基本使用

git init —— 初始化 git clone git pull git add git commit (跟 svn 不一样!必须要提交) git status git push git branch git checkout ###黑魔法 git cherrypick git rebase git stash!(保存现在环境!)

Git Workflow

分支管理开发

Git 工具

Git Bash/Sourcetree(推荐)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment