Git 企業(yè)開發(fā)者教程
然而git其實有著非常強大的功能,如果不能系統(tǒng)的掌握使用這些功能的技能,我們很容易在一些場景下不知所措,比如以下這些:
– 拉取了共享分支后出現(xiàn)了沖突,怎么合并?
– 到底該不該使用分支?
– 修改了分支上的代碼,但是需要臨時切換到另外一個分支上工作,可是當(dāng)前的代碼還不能提交,怎么辦?
– 團隊開始使用拉取請求(Pull Request)了?這是個什么鬼?
– 改了代碼,直接運行g(shù)it commit為啥就不工作呢?
– 怎么樣才能把遠程分支下載到本地開始工作?
– 變基(rebase)和合并(merge)到底有什么區(qū)別?
– 我需要別人分支上的幾個改動,怎么才能只獲取這幾個改動而不合并所有代碼?
– 如何比較文件,分支?如何回退代碼?
– 我們的代碼庫很大,如何才能正確切換到Git?
– Git如何能夠幫助我們更安全,高效的發(fā)布?
在互聯(lián)網(wǎng)上其實有很多的Git教程,但是太過零散,不成體系,特別是沒有考慮到企業(yè)開發(fā)者所面臨的許多具體而實際的問題。我希望通過這套教程,解決企業(yè)開發(fā)者在使用Git過程中所遇到的諸多疑問,讓更多的團隊能夠享受到Git所帶來的良好開發(fā)體驗,讓大家能夠真正在大規(guī)模復(fù)雜項目中將Git的優(yōu)勢發(fā)揮出來。我會將我們在給各種企業(yè)進行研發(fā)管理咨詢中所積累的經(jīng)驗以及我們的解決方案融入到這套教程中,相信其中的很多場景一定會對你有所幫助。
這個教程會分成4個部分
1. 基礎(chǔ)篇:我們一起了解Git的歷史,分布式版本控制系統(tǒng)的特點和優(yōu)勢,決定是否git真的適合你。我們也將完成一些初始化的工作,比如:安裝和配置Git工具,介紹幾個我常用的Git工具,對你的本地Git環(huán)境進行初始化操作。最后我們將完成一些常見的Git操作,讓你可以開始在日常工作中開始使用Git。如果你還在糾結(jié)以上那些問題,不要擔(dān)心,你必須勇敢的邁出這一步,因為Git已經(jīng)是全球開發(fā)人員公認的最好的版本控制工具,相信你遇到的問題他人都已經(jīng)遇到過,也一定都有解決的辦法。
為什么要使用版本控制系統(tǒng)
Git 分布式版本控制系統(tǒng)的優(yōu)勢
Git 安裝和設(shè)置
初始化Git存儲庫(Repo)
起步 1 – 創(chuàng)建分支和保存代碼
起步 2 – 了解Git歷史記錄
起步 3 – 拉取請求 Pull Request 工作機制
2. 進階篇:我們一起了解Git最常用的一系列功能,讓你可以開始更加得心應(yīng)手的完成越加復(fù)雜的開發(fā)工作,這個時候你會逐漸愛上這個小小的工具,開始欲罷不能;但是你要記住,淹死的都是會游泳的,在你還不夠了解一些復(fù)雜的功能的時候,不要隨意嘗試,因為這時你的破壞能力已經(jīng)足夠毀掉你辛苦工作很久的代碼了。這一篇中我們會一起針對很多困擾你的問題找到解決方案,讓你真正成為一名git高手。為了滿足不同用戶的口味,我會分別使用命令行和 Visual Studio 兩種工具來完成這一篇的所有操作,確保鍵盤手和鼠標(biāo)手都能得到滿足。
使用已有Git Repo提交和共享代碼
創(chuàng)建新的Git Repo
理解Git提交(commit)工作機制
使用Git分支(branch)進行工作
使用Git推送(push)共享代碼
使用Git獲取/拉取(fetch/pull)更新代碼
使用拉取請求(Pull Request)進行代碼檢視
使用Git變基(rebase)更新代碼
使用Git提交揀選(cherry pick)功能在分之間復(fù)制改動
解決合并沖突(merge conflict)
撤銷改動
忽略文件
使用Git歷史記錄比較文件,分支或者獲取歷史版本
3. Git企業(yè)開發(fā)者篇:Git起源于開源軟件Linux的開發(fā)過程,因此在開源社區(qū)中廣泛流行,也因此很多企業(yè)開發(fā)者對其敬而遠之,感覺無法滿足企業(yè)開發(fā)的訴求。在這一篇中,我們將一起探討很多企業(yè)開發(fā)者更加關(guān)心的話題,比如:權(quán)限管理,Repo分庫規(guī)劃,大規(guī)模團隊的Git工作流程,與敏捷/瀑布式等不同開發(fā)模式的配合,與持續(xù)集成/持續(xù)部署流水線的配合等對于企業(yè)開發(fā)非常重要的話題。幫助你將這個最棒的版本控制工具在你復(fù)雜的企業(yè)開發(fā)場景中使用起來。同時我們也將探討如何在大規(guī)模團隊中引入git的一些策略性思考。
在VSTS/TFS上創(chuàng)建Git倉庫
遷移已有代碼庫到Git倉庫,如:SVN,TFVC
Git服務(wù)器的權(quán)限管理
Git分庫規(guī)則
大規(guī)模團隊的Git配置管理流程
使用Git支持敏捷/瀑布式開發(fā)流程
Git與持續(xù)交付(配置持續(xù)集成和持續(xù)部署)
4. Git分支策略篇:在了解了git強大的分支功能后,如何能夠設(shè)計出最為高效的分支策略就是困擾很多開發(fā)團隊的問題。在這一篇中我們將專門探討如何針對不同項目/產(chǎn)品的交付方式和團隊結(jié)構(gòu)設(shè)計不同的分支策略,滿足各種規(guī)模團隊的不同訴求。
Git 分支策略設(shè)計的原則,調(diào)試單元,部署單元,測試單元
Git 與團隊結(jié)構(gòu),產(chǎn)品/項目發(fā)布特性,產(chǎn)品生命周期
Git 拉取請求與可靠持續(xù)交付
Git 分叉(Fork)與分支(Branch)的區(qū)別
傳統(tǒng)分支模式與特性分支模式的比較
特性分支+拉取請求+質(zhì)量門模式
混用分叉(fork)與特性分支(feature branch)
在這個教程中,我們將使用 Visual Studio Team Services (VSTS) /Team Foundation Server(TFS) 作為我們的Git服務(wù)器。為什么不采用GitHub?這一定是你在想的問題!因為這一系列文章的目標(biāo)用戶是企業(yè)開發(fā)者,而VSTS提供了企業(yè)開發(fā)者所需要的全生命周期管理能力,我們在4個篇章逐漸深入的過程中你就會體會到這種端到端工具所帶來的好處。我一直都認為,一個企業(yè)的軟件交付效率中最重要的環(huán)節(jié)永遠的是編碼過程,因為這才是軟件交付的核心,沒有任何的管理實踐可以替代開發(fā)人員自由自在的編寫代碼所帶來的效率提升。當(dāng)然,如果你不使用VSTS/TFS也完全不必擔(dān)心,這個教程中的大多數(shù)內(nèi)容同時適用于任何Git服務(wù)器,包括GitHub, GitLab, BitBucket等大家常用的環(huán)境。
第三十六屆CIO班招生
國際CIO認證培訓(xùn)
首席數(shù)據(jù)官(CDO)認證培訓(xùn)
責(zé)編:content
免責(zé)聲明:本網(wǎng)站(http://www.www.gypb.net/)內(nèi)容主要來自原創(chuàng)、合作媒體供稿和第三方投稿,凡在本網(wǎng)站出現(xiàn)的信息,均僅供參考。本網(wǎng)站將盡力確保所提供信息的準(zhǔn)確性及可靠性,但不保證有關(guān)資料的準(zhǔn)確性及可靠性,讀者在使用前請進一步核實,并對任何自主決定的行為負責(zé)。本網(wǎng)站對有關(guān)資料所引致的錯誤、不確或遺漏,概不負任何法律責(zé)任。
本網(wǎng)站刊載的所有內(nèi)容(包括但不僅限文字、圖片、LOGO、音頻、視頻、軟件、程序等)版權(quán)歸原作者所有。任何單位或個人認為本網(wǎng)站中的內(nèi)容可能涉嫌侵犯其知識產(chǎn)權(quán)或存在不實內(nèi)容時,請及時通知本站,予以刪除。