repo用法

關於repo的一些命令 
一、怎樣在代碼文件夾下全部git庫都創建分支? repo start --all <分支名>
二、怎樣刪除代碼文件夾下全部git庫的分支? repo abandon <分支名> git

*1和2其實就是相反的動做 app

三、怎樣知道代碼文件夾下都改動了那些? repo diff
四、怎樣把個人提交上傳的gerrit上? repo upload orm

若是出現文件就把要提交的部分前面的#去掉 同步

五、不想同步全部代碼,只想同步一部分? repo sync <project1> <project2>……
六、repo upload之後後悔了,須要再修改一些? it

(1)在原有分支上修改文件
(2)git commit --amend 
(3)repo upload --replace <工程名>
(4)出現文件之後去掉第1行的#,中括號裏面填上 change-id form

關於Git的一些命令 
一、repo init的時候我沒有改用戶名和email,如今發現不對了怎麼辦? email

git config --global user.name "<your name>" ----修改用戶名
git config --global user.email "<your email>" ----修改email
git config --list ----查看修改 打包

二、想查看之前都有哪些提交? git log
三、想查看之前的兩次提交有什麼區別? git diff <log上顯示的哈希值1> <log上顯示的哈希值2>
四、想查看之前代碼,可是如今修改的不能動 git checkout <哈希值>
五、想回到之前,如今修改的都不要了 git reset --hard <哈希值>
六、想把本身的修改提交到本地的git庫裏? file

git add <文件名>
git commit -m "<註釋>" 方法

七、提交之後後悔了,文件仍是要修改後的,只是不想要此次提交? git reset HEAD~1
八、提交之後發現少add了一個文件?

git add <忘記的文件>
git commit --amend

九、git add了不少文件,發現其中一個不想提交? git reset HEAD <file>
十、只想同步代碼裏的一個文件? git pull <file>
十一、只刪除中間的一個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代碼上。

相關文章
相關標籤/搜索