我们可以使用 Git 以及 GitHub 做哪些事情?

要想回答git/github/任何工具可以做哪些事情,一个有系统性的思路是先看它有哪些feature,然后从这些feature极其组合出发看看有那些可能的应用。

调参数神器

对于文本文件,git可以高效地保存历史,方便回滚到以前的状态。如果每个参数设定都搞一个commit,在commit message里面写上定量的效果如何,就方 便回滚到最好的参数。

分支管理=>写文档神器

写文档一般都有好几个版本在进行。一个比较成型但不少新想法还没加进去的给老板看的版本,不成熟的新想法版本1,不成熟的新想法版本2等等。如何在不同版本间自如切换就要用到git branch和git rebase了。用git相比于拷贝粘贴的好处体现在——有些更改是会影响到所有版本的。这时候用git的分支管理直接rebase就可以把一段更改同时应用到所有版本里。同时新想法也会逐渐并到给老板看的稳定版本里,用git也十分方便。

git hook=>自动化神器

git 有个比较高阶一点的功能是 git hook。大概的说就是每次执行git push的时候,客户的git会向一个远程服务器比如github发起push请求,内容是我做了这些更改有这些commits等等。服务器在接受完数据以后可以直接挂断,也可以执行一个用户指定的小程序。比如你可以(用某种方法,方法是什么下面讲)告诉服务器这个“制定的小程序”就是ls,那么服务器在你的git push执行完以后就会执行一下ls,然后把执行的结果(当前repo下面的文件列表)发给你。你的git收到以后会把这个打印在屏幕上。

具体怎么指定这个“特定的小程序”,不同的平台不一样。 如果是github可以看一下webhook

作者:grapeot 链接:https://www.zhihu.com/question/23835324/answer/25813506 来源:知乎 著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。