问题一、
当遇到在一个分支上面提交活动失败时,可以用下面步骤解决:
1、git checkout -b new_branch remote/branch(建一个新的分支)
2、git log--oneline -10(查看在线的活动)
3、git show
4、gitcherry-pick
5、git status
6、git push origin HEAD:QC8926_Driver_Dev(把修改push到QC8926_Driver_Dev流上)
Non-fast-forward 没有更新导致
问题二、
提交活动失败现象如下:
![remote rejected] HEAD -> 分支
error:failed to push some refs to 'ssh://10.1.11.28:29418://.../..'
现象分析:
1、通过git show 下面的commit号来查看是否你修改的活动
2、如果不是,估计是他的活动没有提交,然后你又把这活动同步到自己分支上。
解决方法:
重新建一个新的分支提交就没有问题了。
先更新git remote update,再建分支。再cherry-pick活动过来,提交
问题三、提交活动出现如下:
Please_fix_commit_style.
分析:主要由于commit的格式不正确
修改:
1)活动号处于delever状态,需要complete状态
2)“活动号”+":"+"name"+"_"格式
git方法步骤:
1)gitcommit --amend
2)修改错误
3)ctrl+x(退出)
4)y(保存)
5)enter
6)git push origin HEAD:refs/for/QC8926_Int (重新提交一遍)
问题四、删除不要的文件
rm删除无法git add
需要通过git rm命令来操作
问题五、合并几个活动为一个活动:
方法如下:
1)git reset --soft (需要合并最早活动之前的那个活动的)ID
2)git status
3)git add .
4)git commit -s -m "---------"
5)git push ----------
问题六、当报下面的错误时,需要下载钩子进行提交活动
![remote urejected] HEAD -> refs/for/QC_Int (missing Change-Id in commit message)
error:failed to push some refs to 'ssh://10.1.1.11.12:1213/../kernel.git'
操作步骤如下:
1)从gerrit上拷贝钩子脚本到本地
拷贝Gerrit服务器提供的commit-msg钩子脚本:
$cd build/
$scp -P 29418-p 10.1.11.28:/hooks/commit-msg.git/hooks/
2)git commit --amend
3)git push origin HEAD:refs/for/QC8926_Int
克隆有权限的代码库
cd/d/8930 //进入8930目录
a.git clone ssh://10.1.11.21:29418/qcom8930/bulid.git build //克隆build库到8930/build目录下
b.git clone ssh://10.1.11.21:29418/qcom8930/bulid.git //克隆build库到8930/build目录下
c.git clone ssh://10.1.11.21:29418/qcom8930/bulidbuild //克隆build库到8930/build目录下
注:以上三种方式都可以,如果后面不加build,git会根据所克隆的git库的名字默认在当前目录下创建build目录,但是需要加.git
问题七、当遇到missing tree的时候
用git cat-file –p commit号
执行:git pull --rebase
最后:git push ……...
问题八、当遇到untrack的文件时如何处理
Git clean -xdf&& git reset --hard head
问题九、当需要回退一个活动时操作步骤
回退活动步骤:
1、查看当前分支情况,删除本地不要代码
git clean -xdf
git rebase --abort
2、查看分支、reset本地活动到远程int分支、查看需要回退分支
git branch -a
git reset --hard 分支
3、revert需要返回的分支
git revert 活动号
4、查看活动、修改格式
5、push失败,需要修改添加“-s”来增加修改
git commit -s --amend
6、最后amend下再提交