关于repo的一些命令
1、怎样在代码文件夹下所有git库都建立分支? repo start --all <分支名> 2、怎样删除代码文件夹下所有git库的分支? repo abandon <分支名>*1和2其实就是相反的动作
3、怎样知道代码文件夹下都改动了那些? repo diff
4、怎样把我的提交上传的gerrit上? repo upload如果出现文件就把要提交的部分前面的#去掉
5、不想同步所有代码,只想同步一部分? repo sync <project1> <project2>……
6、repo upload以后后悔了,需要再修改一些?(1)在原有分支上修改文件
(2)git commit --amend (3)repo upload --replace <工程名> (4)出现文件以后去掉第1行的#,中括号里面填上 change-id
关于Git的一些命令
1、repo init的时候我没有改用户名和email,现在发现不对了怎么办?git config --global user.name "<your name>" ----修改用户名
git config --global user.email "<your email>" ----修改email git config --list ----查看修改
2、想查看以前都有哪些提交? git log
3、想查看以前的两次提交有什么区别? git diff <log上显示的哈希值1> <log上显示的哈希值2> 4、想查看以前代码,但是现在修改的不能动 git checkout <哈希值> 5、想回到以前,现在修改的都不要了 git reset --hard <哈希值> 6、想把自己的修改提交到本地的git库里?git add <文件名>
git commit -m "<注释>"
7、提交以后后悔了,文件还是要修改后的,只是不想要这次提交? git reset HEAD~1
8、提交以后发现少add了一个文件?git add <忘记的文件>
git commit --amend
9、git add了很多文件,发现其中一个不想提交? git reset HEAD <file>
10、只想同步代码里的一个文件? git pull <file> 11、只删除中间的一个commit对应的修改,其他不变 git revert <对应的哈希值>关于从A代码里面打包,放到B代码的问题
两种方法:
1)在A代码里面,$git diff <起始哈希值> <终点哈希值> > A.patch
在B代码里面,$git apply A.patch
有冲突解决冲突。
打开对应修改的文件发现就已经被修改了。
--这个方法的缺点是对应A代码的commit是不会加到B代码上的。
2)在A代码里面,$git format-patch -<x> <分支名> -o <路径>
-<x>,x填一个数字,表示从倒数第几个commit开始
运行完成就能在<路径>下看见<x>个patch,对应一个commit一个patch 在B代码里面,$git am <路径>/*.patch,就把所有的patch加到B代码里面
了。 --这个方法可以把A代码里面对应的commit都加到B代码上。