您的位置:首页 > 其它

Git里怎么自动commit到一个新分支?

2014-12-17 23:44 337 查看
通常,正常的流程应该是这样的:

1、从master主线创建新分支

2、checkout这个新分支

3、在working目录上做修改

4、commit修改到分支

OK,很容易理解。问题是,现在的顺序不是这样子的,实际情况是:

1、从master主线直接checkout

2、在对应主线的working目录上直接修改代码

3、现在准备commit了,希望随这个commit自动创建一个分支,但当前working目录仍然对应master主线

How?我知道SVN里checkout时可以-b顺便创建一个新分支,但是,可以“svn commit -b <新分支名>”吗?(一个麻烦的解决方案是:先远程copy,再switch,然后commit,问题是switch的过程中会做一个递归的比对,效率非常差),Git里怎么做?Git本身有一个Stash/Staging特性,似乎是用于保存临时的修改。

我必须小心操作。否则chromium的代码就不好方便地GYN repo与上游同步了。

版本管理好久不用,都有点生疏了:以前SVN用的倒是挺熟;TortoiseHg/Mercurial也用过一段时间,Mercurial看起来是个分布式的DVCS,但它维护一个全局的一致视图,不像Git这种完全分布式的,可以cherry-pick。Git虽然看过书,但没有熟练使用。

可能对于Git而言,git checkout -b是一个廉价操作?(但是这个checkout会覆盖我当前working目录下的修改吗?)

TO BE CONTINUED

参考:https://code.google.com/p/chromium/wiki/GitCookbook
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: