首頁 > 軟體

Git 實際開發中常用命令及使用場景

2020-06-16 16:58:55

git 這個工具蠻強大的,每個公司都會有自己的githup或者gitblit的程式碼倉庫管理,開發也必須使用git來提交程式碼,以前為了方便,就是一直使用sourcetree工具來提交和合併程式碼。最近拋棄了工具,發現git很多的有點及一些特殊場景來如何使用git。

git status || 檢視當前狀態,檢視修改和新增的某些檔案。

git branch || 檢視原生的分支

git branch -a ||列出本地分支和遠端分支,一般遠端多個分支中,你只會有一個分支許可權提交到上去,之於為什麼會有多個分支,後面解釋。

git branch -r ||列出遠端分支

gtit branch -D ||強制刪除某個檔案裡的內容,不需要了

git checkout -b test || 建立分支並切換到test分支上,比如你從Master上建立的test並且切換到分支,此時你的master的程式碼會自動Merge到test分支。

git checkout master|| 切換分支。

git checkout file ||修改的某個檔案,突然間不想要了或者修改錯了,就用這個命令即可,丟棄你本地此檔案的修改。

git pull origin master || 拉去遠端程式碼,一般會在早上做到工位後首先做的第一件事就是拉取一下程式碼或者提交代前要Pull一下程式碼,如果有衝突,就解決衝突,沒衝突,就自然提交了。

git diff || 檢視衝突的檔案

git add . || 常用把當前分支的修改或者新增的檔案,增加到Index上,這時還沒提交。
也可以git add file檔案,增加某個檔案。

git commit -a "修改某個bug" ||commit一下剛才加入到Index上的程式碼,記住此時還在你本地呢,還沒提交到遠端。這個時候如果還不放心,那麼再git pull origin master 拉取一下遠端程式碼。

git commit -am || 是git add 和commit 的合併的寫法。

git push origin master ||本地分支推到遠端的Master分支,此時完美。

問題1:正在疊代某個功能的時候,測試人員測試出一個bug,怎麼辦?手裡的功能才開發一半?
答:習慣用本地分支開發,養成良好的習慣可以帶來很多的益處。每次疊×××發前本地應該有自己的分支。開發過程中遇到測試提出的bug怎麼辦?
1、git branch

$ git branch
 master
*  dev_sprint15


說明當前的分支是在第15次疊代的開發分支上。
2:git statsh 讓自己的程式碼暫存,同時要依賴的model和service和dao都要暫存起來。因為其它的依賴層都要暫存起來,保不齊你修改了什麼。
3、git checkout master 切換到開發分支上,然後git pull origin master 拉取一下程式碼。此時為了保險,我一般都會再建立一個bug分支,git checkout -b bug_11,建立並且切換到bug_11分支上,然後再這個分支上修改bug。如果修改完了,然後自測成功了。切換到git master(開發分支上),然後此時要把bug_11分支的程式碼merge分支過來。
4、git merge --no-ff "merge from xxxx" bug_11,合併一下程式碼。然後git push origin master即可。

問題2:線上突然發現一個嚴重bug,領導要求急需解決,不耽誤線上客戶正常使用,此時線上的程式碼和開發庫的程式碼版本已經差得太遠了,怎麼辦?
答:此問題在整理。

由於是個人見解,歡迎指出不對之處,謝謝!

GitHub 教學系列文章: 

通過GitHub建立個人技術部落格圖文詳解  http://www.linuxidc.com/Linux/2015-02/114121.htm

GitHub 使用教學圖文詳解  http://www.linuxidc.com/Linux/2014-09/106230.htm 

使用 GitHub / GitLab 的 Webhooks 進行網站自動化部署  http://www.linuxidc.com/Linux/2016-06/131993.htm

多個GitHub帳號的SSH key切換 http://www.linuxidc.com/Linux/2016-05/131080.htm

如何在同一台電腦上使用兩個GitHub賬戶 http://www.linuxidc.com/Linux/2016-05/131079.htm

利用GitHub搭建個人Maven倉庫  http://www.linuxidc.com/Linux/2016-04/130197.htm

一分鐘認識GitHub http://www.linuxidc.com/Linux/2015-11/125089.htm

分享實用的GitHub 使用教學 http://www.linuxidc.com/Linux/2014-04/100556.htm 

GitHub使用操作指南  http://www.linuxidc.com/Linux/2016-10/135782.htm

GitHub使用方法入門基礎  http://www.linuxidc.com/Linux/2017-05/144084.htm


IT145.com E-mail:sddin#qq.com