首頁 後端開發 php教程 git-新手入職必備操作流程

git-新手入職必備操作流程

Dec 05, 2016 am 11:46 AM
git

一、背景 
之前一直都是在使用svn進行程式碼版本管理,新公司使用的git,雖說之前在github上使用過幾次,但使用場景太過簡單,與公司多人,多分支的開發場景相比,就算沒有使用過,因此註定要碰壁!雖然git 的使用方法,網上一搜一大推,但是作為新手,最可悲的:所有的使用方法都擺在那裡,但是你就不知道,也不敢隨便使用!畢竟是在實戰。現在總結下來,希望可以幫助到和我一樣的新手,不要像我一樣因為一個小小的使用工具,信心嚴重受到打擊!這裡要感謝公司的同事──志凌,算是我git使用的啟蒙指導老師。

本篇文章主要介紹git管理專案的一個簡單,基本的使用流程,老手請忽略!但對新手來說應該是進入公司必備的操作流程,還是比較重要的。良好的開端是成功的一半。初次的使用,一定程度上會決定著你對這款工具的印象和深入學習的慾望,也是剛進公司時個人信心提升的關鍵時刻,假如你能夠順利上手,就能夠迅速進入工作狀態,但是如果無從下手,那就是能力不強的表現了,後果很可能就是惡性循環。看到這是不是覺得有必要收藏一下,哈哈!

二、git 和svn 
兩者都是優良的版本管理工具。

git是分散式:伺服器和每個開發人員都擁有一個本地的代碼管理倉庫,進行本地的代碼管理;

svn集中式:只有在伺服器上有一個代碼管理倉庫;

最後一句:我感覺git 比svn好用! ,有點規模的公司都在用(我接觸過的)!

其它的具體細節,可以自己去谷歌!這裡不是我講的重點。

三、git的使用(以目前所在公司為例講解) 
1、概括

使用git進行專案管理和開發,一般情況下,會在服務端(origin)創建一個倉庫進行程式碼的管理,倉庫會維護三大塊分支。如下圖

1

master分支:只有一個,作為主分支

dev分支:專案目前版本的開發分支,程式設計師會基於此分支 來切 本機分支,進行開發。

其它版本的分支:專案每個版本,在開發測試完成後,最終的穩定程式碼。每當一個版本的開發測試完成後,都會將目前版本的穩定程式碼合併到master分支。

假如在開發目前版本時,發現dev7.0.0版本線上出現了bug。此時,就可以基於dev7.0.0分支,進行修復,這是維護其它版本分支最大的好處。

2、使用(前提是安裝了git軟體,並且配置了ssh)

設定ssh的好處就是,本地向伺服器push程式碼時就不用總是填入使用者名稱和密碼了!

插一個小曲,本人一直以為AndroidStudio整合了git,就不用下載git了。這是完全錯誤的!必須下載,因為AndroidStudio整合的。只不過是git的可視化實用工具。請大家原諒我的無知! !嘿嘿。

(1)、拉取程式碼

提示:安裝好git後,定位到存放本地專案程式碼的很目錄下,滑鼠右鍵,點選“git Bash”,即可彈出指令框! !

$ git clone

該指令會在本地產生一個目錄,與origin的版本庫同名,目錄下麵包含.git檔(預設是隱藏的),和伺服器上master分支的程式碼(也有可能沒有,因為master分支上一般沒有權限取得);要注意此時是在master分支上的,可以使用$ git branch 指令查看! 但是我們是要切dev分支上的程式碼!

$ git checkout dev

該指令是將本地版本庫(local)切換到dev分支(前提是origin上已存在dev分支),建立local與origin對應分支.此分支可以直接與origin對應分支進行通信。如執行程式碼的上傳(push)和更新(pull)操作. ps(也可以使用$ git checkout -b dev origin/dev指令取代)

$ git pull

該指令將origin/dev分支上的程式碼, pull或更新到local/dev 分支上。如果專案有依賴工程,使用$ git clone 指令下載到本機

$ git checkout – b local

該指令,基於dev分支,建立新分支local,並切換到local分支,一定要建立新分支進行開發,絕對不能基於本機dev分支開發,最後就可以將程式碼匯入開發工具了!此時執行 $ git branch 指令應該可以看到 dev 和local 兩個分支。

(2)、程式碼提交

思考:如何將程式碼提交到伺服器?

下載

分析:如果一切正常,我們目前應該是在基於本地dev分支基礎上創建的local分支上,前面已經說過,本地只有dev分支才能與伺服器dev分支進行通信,執行程式碼的pull和push操作。那我們要做的就是 將 local分支上的程式碼,提交到本地dev分支上,之後切換到dev分支,執行push指令,就ok了! !

提示:定位到專案的根目錄(帶.git的資料夾下),滑鼠右鍵,點擊“git Bash”,彈出命令框! !

$ git status

此命令可以查看當前分支上有哪些文件改動了,建議首先執行一下,查看改動的文件,避免提交不需要提交的文件。如果想恢復改動的文件,執行 $ git checkout — 文件路徑/檔名 。

$git add .

改命令將分支上改動的文件(即工作區改動文件),添加到暫存區

$ git commit -m “修改說明”

將暫存區的文件提交到版本庫(我的理解這個版本庫在這裡應該指的是本地dev分支)

$ git checkout dev

切換到本地dev分支

$ git pull

該命令將origin/dev分支上的程式碼,更新到local/dev 分支上。

$ git checkout local

該指令切換到本地local分支

$ git rebase dev

該指令將 dev分支上的最新程式碼,合併到 本地local分支上。此時很可能會遇到檔案衝突的問題,需要到衝突所在的檔案下手動修改,修改好後,執行 gitadd.執行 git rebase –continue,此時應該可以成功合併。

$ git push origin head:refs/for/dev

此指令將本地local分支上修改的程式碼提交到伺服器上。

四、總結 
以上,就是在公司實際開發中,開發人員所必經的一套簡單基礎完整的git工作流程。當然,這些只是在一切正常的情況下,git的強大之處遠不止這些!還有很多複雜的應用場景,我會根據自己實際的工作經驗一一講解。最後,如有錯誤之處還請批評指正,謝謝! !


本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

熱門話題

Java教學
1655
14
CakePHP 教程
1413
52
Laravel 教程
1306
25
PHP教程
1252
29
C# 教程
1226
24
git怎麼更新代碼 git怎麼更新代碼 Apr 17, 2025 pm 04:45 PM

更新 git 代碼的步驟:檢出代碼:git clone https://github.com/username/repo.git獲取最新更改:git fetch合併更改:git merge origin/master推送更改(可選):git push origin master

git怎麼下載項目到本地 git怎麼下載項目到本地 Apr 17, 2025 pm 04:36 PM

要通過 Git 下載項目到本地,請按以下步驟操作:安裝 Git。導航到項目目錄。使用以下命令克隆遠程存儲庫:git clone https://github.com/username/repository-name.git

git怎麼合併代碼 git怎麼合併代碼 Apr 17, 2025 pm 04:39 PM

Git 代碼合併過程:拉取最新更改以避免衝突。切換到要合併的分支。發起合併,指定要合併的分支。解決合併衝突(如有)。暫存和提交合併,提供提交消息。

git下載不動怎麼辦 git下載不動怎麼辦 Apr 17, 2025 pm 04:54 PM

解決 Git 下載速度慢時可採取以下步驟:檢查網絡連接,嘗試切換連接方式。優化 Git 配置:增加 POST 緩衝區大小(git config --global http.postBuffer 524288000)、降低低速限制(git config --global http.lowSpeedLimit 1000)。使用 Git 代理(如 git-proxy 或 git-lfs-proxy)。嘗試使用不同的 Git 客戶端(如 Sourcetree 或 Github Desktop)。檢查防火

git commit怎麼用 git commit怎麼用 Apr 17, 2025 pm 03:57 PM

Git Commit 是一種命令,將文件變更記錄到 Git 存儲庫中,以保存項目當前狀態的快照。使用方法如下:添加變更到暫存區域編寫簡潔且信息豐富的提交消息保存並退出提交消息以完成提交可選:為提交添加簽名使用 git log 查看提交內容

如何解決PHP項目中的高效搜索問題? Typesense助你實現! 如何解決PHP項目中的高效搜索問題? Typesense助你實現! Apr 17, 2025 pm 08:15 PM

在開發一個電商網站時,我遇到了一個棘手的問題:如何在大量商品數據中實現高效的搜索功能?傳統的數據庫搜索效率低下,用戶體驗不佳。經過一番研究,我發現了Typesense這個搜索引擎,並通過其官方PHP客戶端typesense/typesense-php解決了這個問題,大大提升了搜索性能。

git怎麼更新本地代碼 git怎麼更新本地代碼 Apr 17, 2025 pm 04:48 PM

如何更新本地 Git 代碼?用 git fetch 從遠程倉庫拉取最新更改。用 git merge origin/<遠程分支名稱> 將遠程變更合併到本地分支。解決因合併產生的衝突。用 git commit -m "Merge branch <遠程分支名稱>" 提交合併更改,應用更新。

git怎麼刪除倉庫 git怎麼刪除倉庫 Apr 17, 2025 pm 04:03 PM

要刪除 Git 倉庫,請執行以下步驟:確認要刪除的倉庫。本地刪除倉庫:使用 rm -rf 命令刪除其文件夾。遠程刪除倉庫:導航到倉庫設置,找到“刪除倉庫”選項,確認操作。

See all articles