Git使用笔记(3)cherry pick

在本地建立一个local branch

repo start cherrypickbranchname .

然后git cherry-pick -x <commitid>

如果其中有冲突的话就是用我前面提到的meld工具。

meld  *********.java(冲突的文件)

修改好文件以后需要git add. 然后git commit。这就完成一个change的cherrypick。

可以一次性在本地cherry pick n个change。

如果再cherry-pick过程中觉得当前的change不需要可以使用

git reset

git checkout .

这样就可以把当前的change舍弃。

如果已经再本地branch提了10个change,而我想把第5个change舍弃的话就用到git revert了。

当然我这里有review的网站,只需要把前面4个change先merge以后。

然后把剩下的5个change全部再cherrypick到另外新建的local branch,rebase已经merge的代码,然后再repo upload。

change的commit是

git fetch ssh://******.com:33333/platform/vendor/semc/packages/apps/gallery refs/changes/93/200893/5 && git cherry-pick FETCH_HEAD

其它命令:

repo download platform/vendor/semc/packages/apps/gallery 200893/5

git fetch ssh://******.com:29418/platform/vendor/semc/packages/apps/gallery refs/changes/93/200893/5 && git checkout FETCH_HEAD

git pull ssh:/******.com:29418/platform/vendor/semc/packages/apps/gallery refs/changes/93/200893/5

git fetch ssh://******.com:29418/platform/vendor/semc/packages/apps/gallery refs/changes/93/200893/5 && git format-patch -1 --stdout FETCH_HEAD

你可能感兴趣的:(ssh,upload,git,download,merge,branch)