1.若commit 且push后,发现文件存在问题,可如下操作:
(1)本地修改对应文件至OK,然后,
git add filename
git commit --amend
git push .....
eg:(git push ssh://username@master.gerrit.legato:29418/rolling-afp HEAD:refs/for/master)
这样修改后的文件就会commit到同一个commit ID上,且push更新到同一处;
2. 若commit 且push后,发现存在merge conflict,可如下操作:
(1) 将push的单abandon掉,本地repo sync 获取最新的代码,将自己的文件改动更新进去,然后
git add filename
git commit -s
git push .....
这样修改后的文件就OK了(这种方法暴力快捷,推荐),之前的Commit记录也会被删除掉。
(2)本地repo sync 获取最新的代码,cherry-pick之前的提交,合并提交即可
repo sync
git fetch "ssh://username@XXXX" refs/changes/04/73804/2 && git cherry-pick xxx
修改以解决冲突
git add filename
git commit --amend
git push .....
3. 删除错误的Push(abandon)以及commit记录
(1)git reset --hard commit-ID(该ID设为想要删除的commit的前一次commit的ID即可).
即为所有的文件状态回复到commit-ID的提交完成状态。



