摘要:下面是需要了解的個命令和它們的一些常見標(biāo)志。每個命令都鏈接到該命令的指南。僅用于提交級別。指定一個不同的提交,而不是來丟棄自提交以來的更改。包裝在本文中,你已經(jīng)看到了一些關(guān)鍵的命令,并配置了環(huán)境以節(jié)省時間。
在本文中,我們將討論那些作為開發(fā)人員、數(shù)據(jù)科學(xué)家或產(chǎn)品經(jīng)理應(yīng)該知道的各種各樣的Git命令。并且將使用Git查看、刪除和整理。此外,我們還將介紹如何使用Bash別名和Git編輯器配置轉(zhuǎn)義Vim和節(jié)省時間的方法。
如果你不熟悉基本的git命令,那么在閱讀本文之前,請查看我之前關(guān)于git工作流的文章。
下面是需要了解的10個命令和它們的一些常見標(biāo)志。每個命令都鏈接到該命令的Atlassian Bitbucket指南。
首先,讓我們來查看變化。
git diff——查看所有本地文件更改。可以附加文件名,以僅顯示一個文件的更改。
git log——查看所有提交歷史記錄。也可以用于具有g(shù)it log -p my_file的文件。輸入q退出。
git blame my_file——查看誰更改了my_file中的內(nèi)容和時間。
git reflog——顯示本地存儲庫HEAD的更改日志。有助于找到遺失的文件。
用git查看信息并不是很混亂。相比之下,Git提供了大量的選項(xiàng)來刪除、撤消提交和文件更改。
git reset、git checkout和git revert用于撤消對存儲庫所做更改的影響。這些命令可能很難理解。
git reset和git checkout可用于提交和單個文件。git revert僅用于提交級別。
如果你只是處理尚未合并到協(xié)作遠(yuǎn)程工作中的本地提交,則可以使用這些命令中的任何一個。
如果你正在協(xié)作工作,并且需要撤銷在遠(yuǎn)程分支中的提交,那么就使用git revert。
這些命令中的每一個都可以采用多種選擇。 以下是常見用途:
git reset --hard HEAD——丟棄自最近提交以來的階段性和非階段性更改。
指定一個不同的提交,而不是HEAD來丟棄自提交以來的更改?!猦ard指定階段性和非階段性的更改。
確保你不會放棄協(xié)作者所依賴的遠(yuǎn)程分支的提交!
git checkout my_commit——放棄my_commit之后非階段性的更改。
HEAD通常用于my_commit,以放棄自最近一次提交以來對本地工作目錄的更改。
checkout最適合用于本地撤銷。它不會打亂協(xié)作者所依賴的遠(yuǎn)程分支的提交歷史記錄!
如果你將checkout與分支一起使用,而不是使用提交,則HEAD將切換到指定的分支,并更新工作目錄以匹配。這是checkout命令的更常見用法。
git revert my_commit——撤消my_commit中更改的效果。當(dāng)撤消更改時,revert會進(jìn)行新的提交。
revert對于協(xié)作項(xiàng)目是安全的,因?yàn)樗粫采w其他用戶的分支所可能依賴的歷史記錄。
有時你只想刪除本地目錄中的未跟蹤文件。例如,你可能運(yùn)行了一些代碼,這些代碼創(chuàng)建了許多你在repo中不需要的不同類型的文件。那么,你可以在一瞬間把它們清洗干凈!
git clean -n——刪除本地工作目錄中的未跟蹤文件
-n標(biāo)志用于沒有刪除任何內(nèi)容的干運(yùn)行。
使用-f標(biāo)志來實(shí)際刪除文件。
使用-d標(biāo)志刪除未跟蹤的目錄。
默認(rèn)情況下,.gitignore未跟蹤的文件不會被刪除,但是可以更改此行為。
現(xiàn)在你已經(jīng)了解了在Git中撤消操作的工具,那么讓我們來看看另外兩個命令。
git commit --amend——將階段性的更改添加到最近的提交。
如果沒有執(zhí)行暫存,此命令只允許你編輯最近的提交消息。只有在提交未集成到遠(yuǎn)程主分支時才使用此命令!
git push my_remote --tags——將所有本地標(biāo)記發(fā)送到遠(yuǎn)程repo。適合于版本控制更改。
如果你正在使用python并對構(gòu)建的包進(jìn)行更改,bump2version將自動為你創(chuàng)建標(biāo)記。一旦你推送了標(biāo)記,就可以在發(fā)布中使用它們。這是我制作第一個OSS python包的指南。跟著我,確保你不會錯過版本控制的部分!
使用Git,你可能有時會發(fā)現(xiàn)自己陷入了Vim編輯器會話。例如,假設(shè)你嘗試在沒有提交消息的情況下提交,Vim將自動打開。如果你不了解Vim,這有點(diǎn)難纏——看看這個在Stack Overflow中超過4,000投票的回答,來了解如何擺脫它。
以下是使用保存文件逃避Vim的四步計(jì)劃:
1.按i進(jìn)入插入模式。
2.在第一行輸入提交消息。
3.按下退出鍵-——Esc。
4.輸入:x。別忘了冒號。
恭喜,你自由了!
為了完全避免Vim,可以在Git中更改默認(rèn)編輯器。這里是一些帶有通用編輯器命令的文檔。下面是修改我使用的編輯器Atom默認(rèn)值的命令:
假設(shè)你已經(jīng)安裝了Atom,現(xiàn)在可以解決其中的Git問題。太棒了!
通過在.bash_profile中添加以下別名,為Git命令添加快捷方式。
你可以根據(jù)自己的喜好調(diào)整Git命令的快捷方式。
如果你沒有.bash_profile,可以使用以下命令在macOS上創(chuàng)建一個:
然后打開它:
有關(guān).bash_profile的更多信息,請點(diǎn)擊這里。
現(xiàn)在,當(dāng)你在終端中輸入gs時,它與輸入git status相同。請注意,你可以在快捷方式之后在終端中輸入其他標(biāo)志。
你也可以制作Git別名,但是那些要求你在快捷命令之前鍵入git。這就多此一舉了。
在本文中,你已經(jīng)看到了一些關(guān)鍵的Git命令,并配置了環(huán)境以節(jié)省時間?,F(xiàn)在你已經(jīng)有了Git和GitHub的基礎(chǔ)。準(zhǔn)備好下一步了嗎?
查看這個Bitbucket Git教程,來了解更多。
探索Git分支的交互式指南。分支可能不好理解,但絕對值得一看。
去玩,去學(xué)習(xí),向別人解釋這些不同之處。
我希望這篇介紹Git和GitHub的文章對你有用。如果可以,請?jiān)谀阕钕矚g的社交媒體上分享,這樣其他人也能找到它。
我寫的是如何有效地使用Python、Docker以及其他編程和數(shù)據(jù)科學(xué)工具。如果你對此感興趣,請?jiān)谶@里閱讀更多。
閱讀原文
本文為云棲社區(qū)原創(chuàng)內(nèi)容,未經(jīng)允許不得轉(zhuǎn)載。
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/11466.html
摘要:但這并不意味著依賴版本是鎖死的。黃色表示不符合指定的語義化版本范圍,比如大版本升級,升級可能會遇到兼容性問題。文件可以列出不想打包的文件,避免把一些無關(guān)的文件發(fā)布到上。 作者: LeanCloud weakish 分享一些 npm 包管理工具的實(shí)用小竅門,希望能夠略微提高下前端、Node.js 開發(fā)者的生活質(zhì)量。 絕大多數(shù)前端和 Node.js 開發(fā)者每天的日常工作都離不開 npm,不...
摘要:歡迎來我的個人站點(diǎn)性能優(yōu)化其他優(yōu)化瀏覽器關(guān)鍵渲染路徑開啟性能優(yōu)化之旅高性能滾動及頁面渲染優(yōu)化理論寫法對壓縮率的影響唯快不破應(yīng)用的個優(yōu)化步驟進(jìn)階鵝廠大神用直出實(shí)現(xiàn)網(wǎng)頁瞬開緩存網(wǎng)頁性能管理詳解寫給后端程序員的緩存原理介紹年底補(bǔ)課緩存機(jī)制優(yōu)化動 歡迎來我的個人站點(diǎn) 性能優(yōu)化 其他 優(yōu)化瀏覽器關(guān)鍵渲染路徑 - 開啟性能優(yōu)化之旅 高性能滾動 scroll 及頁面渲染優(yōu)化 理論 | HTML寫法...
摘要:歡迎來我的個人站點(diǎn)性能優(yōu)化其他優(yōu)化瀏覽器關(guān)鍵渲染路徑開啟性能優(yōu)化之旅高性能滾動及頁面渲染優(yōu)化理論寫法對壓縮率的影響唯快不破應(yīng)用的個優(yōu)化步驟進(jìn)階鵝廠大神用直出實(shí)現(xiàn)網(wǎng)頁瞬開緩存網(wǎng)頁性能管理詳解寫給后端程序員的緩存原理介紹年底補(bǔ)課緩存機(jī)制優(yōu)化動 歡迎來我的個人站點(diǎn) 性能優(yōu)化 其他 優(yōu)化瀏覽器關(guān)鍵渲染路徑 - 開啟性能優(yōu)化之旅 高性能滾動 scroll 及頁面渲染優(yōu)化 理論 | HTML寫法...
摘要:歡迎來我的個人站點(diǎn)性能優(yōu)化其他優(yōu)化瀏覽器關(guān)鍵渲染路徑開啟性能優(yōu)化之旅高性能滾動及頁面渲染優(yōu)化理論寫法對壓縮率的影響唯快不破應(yīng)用的個優(yōu)化步驟進(jìn)階鵝廠大神用直出實(shí)現(xiàn)網(wǎng)頁瞬開緩存網(wǎng)頁性能管理詳解寫給后端程序員的緩存原理介紹年底補(bǔ)課緩存機(jī)制優(yōu)化動 歡迎來我的個人站點(diǎn) 性能優(yōu)化 其他 優(yōu)化瀏覽器關(guān)鍵渲染路徑 - 開啟性能優(yōu)化之旅 高性能滾動 scroll 及頁面渲染優(yōu)化 理論 | HTML寫法...
摘要:具體來說,包管理器就是可以通過命令行,幫助你把外部庫和插件放到你的項(xiàng)目里面并在之后進(jìn)行版本升級,這樣就不用手工復(fù)制和更新庫?,F(xiàn)在有的包管理器主要是和。 一、基礎(chǔ) 1、學(xué)習(xí)HTML基礎(chǔ) HTML給你的網(wǎng)頁賦予了結(jié)構(gòu)。它就像是人的骨架那樣讓你保持站立。首先你需要去學(xué)習(xí)語法以及它必須提供的一切。你的學(xué)習(xí)應(yīng)該聚焦在下面這些東西上: 學(xué)習(xí)HTML基礎(chǔ),了解如何編寫語義HTML 理解如何把網(wǎng)頁分...
閱讀 2422·2021-11-24 09:39
閱讀 3247·2021-10-09 09:53
閱讀 1138·2021-09-22 16:06
閱讀 4462·2021-09-02 10:18
閱讀 806·2021-08-23 09:42
閱讀 1770·2021-08-17 10:11
閱讀 2691·2019-08-30 13:02
閱讀 2128·2019-08-30 12:49