1、git中將某個分支或者主幹的commit代碼更新到另一主幹或分支上的方法:html
例如:將主幹上提交的commit號:d6d5c3317d55016da450d99d7c04a01739a3b1ee同步到分支20160822productjava
先拉取:20160822product分支ios
而後在idea命令控制檯輸入如下兩個命令便可:git
git checkout 20160822productgithub
git cherry-pick d6d5c3317d55016da450d99d7c04a01739a3b1eeapi
2、將某個dubbox子工程代碼更新並拉取到本地,與本地主幹工程同步方法:ssh
一、先切換到dubbox子工程下,ide
二、查看分支:git branch idea
三、檢出分支:git checkout master.net
四、更新分支:git pull
五、將遠程拉到本地:git pull origin master
3、經常使用的git命令
#安裝開發環境 mvn clean install -Pdev -DskipTests
#打包開發環境 mvn clean package -Pdev -DskipTests
查詢jar包結構命令: mvn dependency:tree
4、git解決衝突後提交不上解決:
Username for 'https://github.com': shiren1118
Password for 'https://shiren1118@github.com':
To https://github.com/shiren1118/iOS_code_agile.git
! [rejected] master -> master (non-fast-forward)
error: failed to push some refs to 'https://github.com/shiren1118/iOS_code_agile.git'
hint: Updates were rejected because the tip of your current branch is behind
hint: its remote counterpart. Merge the remote changes (e.g. 'git pull')
hint: before pushing again.
hint: See the 'Note about fast-forwards' in 'git push --help' for details.
查看大部分資料,只有這個有用
http://www.cnblogs.com/xwdreamer/archive/2012/05/29/2523958.html
勾選強制覆蓋已有的分支(可能會丟失改動),再點擊上傳,上傳成功。
只有這句是核心,因此,本人就略微想了一下
[master][~/Downloads/ios] git push -u origin master -f
至此,搞定問題
將git的master代碼覆蓋爲某個分支代碼方法:
git reset --hard 20170726prod
git push origin master --force
6、修改了.gitignore後須要執行的命令(須要將遠程的被忽略的刪除)
git rm -r --cached .
git add .
git commit -m 'update .gitignore'
7、git 在命令行commit push
git命令:
git add -A
git commit -m "git run ok"
git push origin master
8、開發過程當中,常常會有一些通用的部分但願抽取出來作成一個公共庫來提供給別的工程來使用,而公共代碼庫的版本管理是個麻煩的事情。今天無心中發現了git的git submodule命令,以前的問題迎刃而解了。
進入主工程輸入命令引入子工程:git submodule add ssh://git@xxxxx:61317/home/git/repo/java/share-api
更新子工程:
cd share-api
git pull
9、執行完commit後,想撤回commit,怎麼辦?
這樣涼拌:
git reset --soft HEAD^
這樣就成功的撤銷了你的commit
注意,僅僅是撤回commit操做,您寫的代碼仍然保留。