您好,登錄后才能下訂單哦!
這篇文章主要講解了“怎么使用Git進(jìn)行版本控制”,文中的講解內(nèi)容簡單清晰,易于學(xué)習(xí)與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學(xué)習(xí)“怎么使用Git進(jìn)行版本控制”吧!
Git是一個版本控制軟件,可讓您與其他程序員協(xié)作。Git解決的最大問題是它幫助開發(fā)人員跟蹤他們正在處理的代碼庫的不同版本。
在版本控制系統(tǒng)發(fā)明之前,不同的開發(fā)人員很難同步他們的工作。
您可以從官方網(wǎng)站下載并安裝Git。
如果您在Windows上使用它,請確保將Git添加到環(huán)境變量Path
中。
在 Linux 中,您可以使用以下命令直接從終端安裝它:
sudo apt-get install git
安裝完成后,您可以通過執(zhí)行以下命令來檢查Git是否安裝正確:
git --version
如果您獲得當(dāng)前安裝的版本,則安裝成功,您就可以開始了。
現(xiàn)在讓我們通過一些小例子來學(xué)習(xí)Git的基礎(chǔ)知識。
首先,讓我們討論如何為代碼創(chuàng)建單一的真實(shí)來源。
在 Git 中,存儲代碼的地方稱為repository。
在項(xiàng)目中使用Git 的第一步是初始化Git存儲庫。您可以使用以下命令初始化Git存儲庫:
git init
此命令在當(dāng)前目錄中創(chuàng)建一個子目錄.git
。它將保存所有內(nèi)部 Git 元數(shù)據(jù),例如提交歷史記錄。
我們需要創(chuàng)建一些文件來暫存更改并進(jìn)行提交(我將在下面討論)。讓我們創(chuàng)建test.txt并在其中插入一些文本。
暫存意味著告訴 Git 您準(zhǔn)備將哪些文件提交(添加)到存儲庫。當(dāng)您正在進(jìn)行工作并想要提交單個文件時,它非常有用。
現(xiàn)在,我們已準(zhǔn)備好進(jìn)行更改。您可以單獨(dú)列出要暫存的文件,如下所示:
git add test.txt
一旦我們執(zhí)行了這個命令,Git 就知道test.txt已經(jīng)準(zhǔn)備好提交了。
或者,您可以使用以下命令暫存所有文件:
git add .
當(dāng)您有一堆文件并且不想鍵入每個文件名時,它很有用。
提交更改會在給定的時間點(diǎn)創(chuàng)建代碼庫的快照。您可以稍后返回此快照或與您的隊(duì)友共享,以便他們可以從您的進(jìn)度中積累。
請記住,只有為提交暫存的文件才會包含在其中。如果你不暫存任何東西,你將無法提交。
在暫存我們的更改之后,是時候提交更改了。要提交更改,請使用:
git commit -m "<message describing the change>"
一旦我們執(zhí)行了git commit,我們就完成了對代碼庫的更改。
給代碼寫注釋是一種良好的美德,給Git寫提交信息也是。在很多集成git的ide中,沒有填寫提交信息是不能進(jìn)行提交的,提交信息也可以幫助你快速定位到你修改的地方,以及做了哪些改動。相信我,寫了提交信息會讓你對你所做的工作有個更清晰的了解。
您可能希望查看項(xiàng)目更改的日志。您可以使用以下命令執(zhí)行此操作:
git log
如您所見,有 2 個提交。第一個顯示我們已經(jīng)創(chuàng)建了一個新文件,第二個描述了對它的修改。
請記住,Git 不會自動跟蹤您所做的更改。您應(yīng)該手動暫存和提交它們。
如果您在提交中犯了錯誤,您可能想要撤銷更改。
有兩種方法可以撤消更改:
Reset
Revert
重置命令的一般語法如下所示: git reset <reset types> HEAD~<number of commits to undo>
最常用的重置類型是:
--soft :取消提交并保持更改
--hard :取消提交和刪除更改
如果我們想從 Git 中取消提交更改,但保留對代碼的本地修改,我們使用以下命令:
git reset --soft HEAD~1
當(dāng)您不小心暫存了一些不屬于提交的文件時,它很有用。
重置后,您可以暫存必要的更改并提交它們。
您可能還注意到,每個提交都與一個hash值相關(guān)聯(lián)。
您還可以使用hash值來撤銷特定的提交:
git revert 8a11c5095f2dcd70b0bc8c66061a1368558a3abf
這與重置不同,因?yàn)樗试S您撤銷在特定提交中所做的更改。
在我們分解命令的時候,我們發(fā)現(xiàn)git revert <commit hash>在您還原更改時,Git 會添加一個額外的提交。
Git 允許您創(chuàng)建不同的分支。這些分支使您可以將代碼版本的范圍分開(例如,錯誤修復(fù)、開發(fā)、生產(chǎn)等——所有不同的分支)。
要創(chuàng)建新分支,請使用以下命令:
git checkout -b <new branch name>
要切換到現(xiàn)有分支,請刪除-b標(biāo)志并使用現(xiàn)有分支名稱而不是新分支名稱:
git checkout <branch name>
在分支中進(jìn)行切換后,您可能希望使用另一個分支的代碼更新主分支。為此,首先移動到要更新的分支并使用以下命令:
git merge <update source branch name>
如果一切順利,此操作將在目標(biāo)分支中創(chuàng)建一個合并提交,并在那里添加所有提交。
在合并分支時,可能會發(fā)生在每個分支中更新同一文件的相同部分的情況。
在這種情況下,會發(fā)生沖突,因?yàn)镚it不知道要保留哪些更改以及要放棄哪些更改。所以 Git 創(chuàng)建了一個沖突消息,并提示你手動選擇哪個分支是正確的。
沖突消息概述了沖突發(fā)生的位置以及當(dāng)前和傳入的更改。
決定如何解決沖突后,需要添加一個commit來解決沖突。
要與他人協(xié)作,您需要處理遠(yuǎn)程存儲庫。我們將專注于如何與GitHub合作使用Git,但您可以使用任何其他類似的站點(diǎn),如GitLab或gitee。
要與他人協(xié)作,您需要在網(wǎng)站上創(chuàng)建一個帳戶?,F(xiàn)在您已準(zhǔn)備好為GitHub 上的開源項(xiàng)目做出貢獻(xiàn)。
不久前,我發(fā)現(xiàn)在我的編程博客中使用的開源 Hugo 主題Papermod中存在一個小問題。
修復(fù)非常簡單,我想為該項(xiàng)目做出貢獻(xiàn)以改進(jìn)它。
貢獻(xiàn)步驟:
找到您想要貢獻(xiàn)的存儲庫?;蛘?,如果您在公司環(huán)境中工作,您的公司可能會提供一個存儲庫供您使用。
fork存儲庫?,F(xiàn)在你有一個存儲庫的副本。
3. 復(fù)制此處找到的克隆鏈接:
4. 執(zhí)行以下命令:
git clone <clone link>
將在您的計(jì)算機(jī)上創(chuàng)建存儲庫的副本。添加上游遠(yuǎn)程,只是源存儲庫的一個別稱,使用:
git remote add <upstream remote name> <source repository clone link>
現(xiàn)在您可以使用您學(xué)到的Git基礎(chǔ)知識來修改代碼。
提交更改后,您可以使用以下命令更新源存儲庫:
git push origin <branch name to push changes>
現(xiàn)在您可以在源存儲庫中創(chuàng)建一個Pull Request,維護(hù)人員將審查并合并您的代碼。
感謝各位的閱讀,以上就是“怎么使用Git進(jìn)行版本控制”的內(nèi)容了,經(jīng)過本文的學(xué)習(xí)后,相信大家對怎么使用Git進(jìn)行版本控制這一問題有了更深刻的體會,具體使用情況還需要大家實(shí)踐驗(yàn)證。這里是億速云,小編將為大家推送更多相關(guān)知識點(diǎn)的文章,歡迎關(guān)注!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。