git 常用命令行
git 命令行
// 初始化本地倉庫
git init 復制代碼// 創建分支(默認為master分支)
git branch guyal 復制代碼// 切換分支
git checkout -b guyal 復制代碼// 創建并且切換分支
git checkout -b guyal 復制代碼// 查看當前分支
git branch // (帶 * 號的是目前所在分支) 復制代碼// 合并分支
git checkout master // 切換到要合并的分支上 git merge guyal // 合并guyal分支到master分支上 復制代碼// 項目文件添加到版本庫中(也就是本地暫存區),
git add ./ // (./表示添加文件夾下的所有文件) 復制代碼// 把暫存區的文件提交到倉庫
git commit -m "提交說明" 復制代碼// 關聯遠程倉庫
git remote add origin 項目遠程倉庫地址 復制代碼// 遠程倉庫與本地文件同步合并
git pull --rebase origin master(你的分支) 復制代碼// 推送到遠程倉庫
git push -u origin master 復制代碼以上為基本流程
// 刪除本地/遠程分支 // 若刪除失敗,考慮master 為默認分支, 需要先創建自己的分支
git branch -d/D master // 刪除本地master分支 git branch -r -d origin/branch-name // 刪除遠程分支 git push origin :master // 刪除遠程master分支 復制代碼git branch guyal // 創建分支 git push origin guyal:guyal // 將template分支提交到遠程分支上git checkout -b guyal //創建并切換分支 復制代碼// 版本回退 // git 本地版本回退
git reset --hard commit_id // 使用git log 查看commit_id 復制代碼// git 遠程版本回退
git push origin HEAD --force // 遠程提交回退 git reset --hard HEAD^1 (HEAD^1 版本回退上一版) git push --force // 遠程提交回退 復制代碼// 查看提交日志
git log // q鍵, 可退出查看日志狀態 復制代碼eg:
git logcommit 3018f35fcd3e86fcb0921245cacbf4a7d0a0d1b6 (HEAD -> guyal, origin/master, origin/guyal, master) Author: guyal <guyal_910@163.com> Date: Tue Nov 21 17:59:06 2017 +0800修復用戶重新授權實時渲染commit 43fb35c3d938d79b5f4d17fdb13818547451fe79 Author: guyal <guyal_910@163.com> Date: Mon Nov 20 18:15:13 2017 +0800四待模塊頁面基本完成commit da15a615bcbb3d4f8fe328d44c21db66398e54bf Merge: 35fdfdf aacb65b Author: YangYang <18103855639@163.com> Date: Mon Nov 20 10:44:06 2017 +0800update 復制代碼git log --oneline eg:3018f35 (HEAD -> guyal, origin/master, origin/guyal, master) 修復用戶重新授權實時渲染 43fb35c 四待模塊頁面基本完成 da15a61 update 35fdfdf Merge branch 'yang-dev' 9434aaf update aacb65b 訂單二級頁面部分完成 07d7251 待收貨一級頁面已完成 2fba973 待付款頁面已完成 8e7430f 結算中心頁面修改css樣式已完成 57649bb shopping cart interface completed 9b5159f shopping cart interface completed 32e5c0f completed 8e2c497 completed 復制代碼可看出以上兩種方式的區別
// 分支合并
// 本地分支更新遠程分支 (將本地分支合并到遠程分支)
git push origin 本地分支名:遠程分支名 復制代碼// 遠程分支合并本地分支
git pull origin 遠程分支:本地分支 復制代碼//查看遠程主機信息
// 查看遠程主機名稱
git remote 復制代碼// 查看遠程主機網址
git remote -v 復制代碼// 取回遠程倉庫上某個分支的更新, 再與本地的指定分支合并
git pull origin 遠程倉庫名 遠程分支名:本地分支名 復制代碼eg: 取回origin 主機上的dev分支, 與本地的guyal分支合并
git pull origin dev:guyal 復制代碼如果遠程分支是與當前分支合并, 冒號后面的部分可以省略.
git pull origin dev 復制代碼// 同樣的結果, 使用git fetch操作
git fetch origin //git fetch 不會自動合并到本地,so.. git merge origin/dev //fetch 完成之后需要merge 復制代碼eg:
$ git merge origin/dev fatal: refusing to merge unrelated histories 復制代碼//解決方法(git 版本問題) // merge之后如果出現fatal: refusing to merge unrelated histories, 則需要在其后加 --allow-unrelated-histories 即可;
git merge origin/yang-dev --allow-unrelated-histories 復制代碼// 合并解決沖突
<<<<<<< HEAD 這里是你的本地代碼 ======= 這里是遠程倉庫的代碼 >>>>>>> dev 復制代碼視個人情況刪減代碼
// 解決完成之后執行
git add -u // 把修改內容加入緩存, 然后在commit git commit // commit 完成, 查看狀態 git status // 會自動進入vim , 輸入:wq 即可退出 git push -u origin guyal // 提交即可完成 復制代碼// vim 保存退出vim 命令
按ESC鍵 跳到命令模式,然后:
:w 保存文件但不退出vi :w file 將修改另外保存到file中,不退出vi :w! 強制保存,不推出vi :wq 保存文件并退出vi :wq! 強制保存文件,并退出vi q: 不保存文件,退出vi :q! 不保存文件,強制退出vi :e! 放棄所有修改,從上次保存文件開始再編輯 復制代碼--------------后續有待更新 新手上路,歡迎指正
總結
- 上一篇: Flutter 实例 - 加载更多的Li
- 下一篇: Eclipse+Web3j开发以太坊应用