git 常用命令

1 常用

[
復(fù)制代碼

](javascript:void(0); "復(fù)制代碼")

<pre style="margin: 0px; padding: 0px; white-space: pre-wrap; overflow-wrap: break-word; font-family: "Courier New" !important; font-size: 12px !important;">git remote add origin git@github.com:yeszao/dofiler.git # 配置遠(yuǎn)程git版本庫(kù) git pull origin master # 下載代碼及快速合并
git push origin master # 上傳代碼及快速合并 git fetch origin # 從遠(yuǎn)程庫(kù)獲取代碼
git branch # 顯示所有分支 git checkout master # 切換到master分支
git checkout -b dev # 創(chuàng)建并切換到dev分支 git commit -m "first version" # 提交
git status # 查看狀態(tài) git log # 查看提交歷史
git config --global core.editor vim # 設(shè)置默認(rèn)編輯器為vim(git默認(rèn)用nano) git config core.ignorecase false # 設(shè)置大小寫敏感
git config --global user.name "YOUR NAME" # 設(shè)置用戶名 git config --global user.email "YOUR EMAIL ADDRESS" # 設(shè)置郵箱</pre>

[
復(fù)制代碼

](javascript:void(0); "復(fù)制代碼")

2 別名Alias

[
復(fù)制代碼

](javascript:void(0); "復(fù)制代碼")

<pre style="margin: 0px; padding: 0px; white-space: pre-wrap; overflow-wrap: break-word; font-family: "Courier New" !important; font-size: 12px !important;">git config --global alias.br="branch" # 創(chuàng)建/查看本地分支 git config --global alias.co="checkout" # 切換分支
git config --global alias.cb="checkout -b" # 創(chuàng)建并切換到新分支 git config --global alias.cm="commit -m" # 提交
git config --global alias.st="status" # 查看狀態(tài) git config --global alias.pullm="pull origin master" # 拉取分支
git config --global alias.pushm="push origin master" # 提交分支 git config --global alias.log="git log --oneline --graph --decorate --color=always" # 單行海蔽、分顏色顯示記錄
$ git config --global alias.logg="git log --graph --all --format=format:'%C(bold blue)%h%C(reset) - %C(bold green)(%ar)%C(reset) %C(white)%s%C(reset) %C(bold white)— %an%C(reset)%C(bold yellow)%d%C(reset)' --abbrev-commit --date=relative" # 復(fù)雜顯示</pre>

[
復(fù)制代碼

](javascript:void(0); "復(fù)制代碼")

3 創(chuàng)建版本庫(kù)

<pre style="margin: 0px; padding: 0px; white-space: pre-wrap; overflow-wrap: break-word; font-family: "Courier New" !important; font-size: 12px !important;">git clone <url> # 克隆遠(yuǎn)程版本庫(kù) git init # 初始化本地版本庫(kù)</pre>

4 修改和提交

[
復(fù)制代碼

](javascript:void(0); "復(fù)制代碼")

<pre style="margin: 0px; padding: 0px; white-space: pre-wrap; overflow-wrap: break-word; font-family: "Courier New" !important; font-size: 12px !important;">git status # 查看狀態(tài) git diff # 查看變更內(nèi)容
git add . # 跟蹤所有改動(dòng)過的文件 git add <file> # 跟蹤指定的文件
git mv <old> <new> # 文件改名 git rm <file> # 刪除文件
git rm --cached <file> # 停止跟蹤文件但不刪除 git commit -m “commit message” # 提交所有更新過的文件
$ git commit --amend # 修改最后一次提交</pre>

[
復(fù)制代碼

](javascript:void(0); "復(fù)制代碼")

5 查看提交歷史

<pre style="margin: 0px; padding: 0px; white-space: pre-wrap; overflow-wrap: break-word; font-family: "Courier New" !important; font-size: 12px !important;">git log # 查看提交歷史 git log -p <file> # 查看指定文件的提交歷史
$ git blame <file> # 以列表方式查看指定文件的提交歷史</pre>

6 撤消

<pre style="margin: 0px; padding: 0px; white-space: pre-wrap; overflow-wrap: break-word; font-family: "Courier New" !important; font-size: 12px !important;">git reset --hard HEAD # 撤消工作目錄中所有未提交文件的修改內(nèi)容 git reset --hard <version> # 撤銷到某個(gè)特定版本
git checkout HEAD <file> # 撤消指定的未提交文件的修改內(nèi)容 git checkout -- <file> # 同上一個(gè)命令
$ git revert <commit> # 撤消指定的提交</pre>

7 分支與標(biāo)簽

[
復(fù)制代碼

](javascript:void(0); "復(fù)制代碼")

<pre style="margin: 0px; padding: 0px; white-space: pre-wrap; overflow-wrap: break-word; font-family: "Courier New" !important; font-size: 12px !important;">git branch # 顯示所有本地分支 git checkout <branch/tag> # 切換到指定分支或標(biāo)簽
git branch <new-branch> # 創(chuàng)建新分支 git branch -d <branch> # 刪除本地分支
git tag # 列出所有本地標(biāo)簽 git tag <tagname> # 基于最新提交創(chuàng)建標(biāo)簽
git tag -a "v1.0" -m "一些說明" # -a指定標(biāo)簽名稱钱烟,-m指定標(biāo)簽說明 git tag -d <tagname> # 刪除標(biāo)簽
git checkout dev # 合并特定的commit到dev分支上 git cherry-pick 62ecb3</pre>

[
復(fù)制代碼

](javascript:void(0); "復(fù)制代碼")

8 合并與衍合

<pre style="margin: 0px; padding: 0px; white-space: pre-wrap; overflow-wrap: break-word; font-family: "Courier New" !important; font-size: 12px !important;">git merge <branch> # 合并指定分支到當(dāng)前分支 git merge --abort # 取消當(dāng)前合并芹彬,重建合并前狀態(tài)
git merge dev -Xtheirs # 以合并dev分支到當(dāng)前分支褒链,有沖突則以dev分支為準(zhǔn) git rebase <branch> # 衍合指定分支到當(dāng)前分支</pre>

9 遠(yuǎn)程操作

[
復(fù)制代碼

](javascript:void(0); "復(fù)制代碼")

<pre style="margin: 0px; padding: 0px; white-space: pre-wrap; overflow-wrap: break-word; font-family: "Courier New" !important; font-size: 12px !important;">git remote -v # 查看遠(yuǎn)程版本庫(kù)信息 git remote show <remote> # 查看指定遠(yuǎn)程版本庫(kù)信息
git remote add <remote> <url> # 添加遠(yuǎn)程版本庫(kù) git remote remove <remote> # 刪除指定的遠(yuǎn)程版本庫(kù)
git fetch <remote> # 從遠(yuǎn)程庫(kù)獲取代碼 git pull <remote> <branch> # 下載代碼及快速合并
git push <remote> <branch> # 上傳代碼及快速合并 git push <remote> :<branch/tag-name> # 刪除遠(yuǎn)程分支或標(biāo)簽
$ git push --tags # 上傳所有標(biāo)簽</pre>

[
復(fù)制代碼

](javascript:void(0); "復(fù)制代碼")

10 打包

<pre style="margin: 0px; padding: 0px; white-space: pre-wrap; overflow-wrap: break-word; font-family: "Courier New" !important; font-size: 12px !important;">git archive --format=zip --output ../file.zip master # 將master分支打包成file.zip文件滞造,保存在上一級(jí)目錄 git archive --format=zip --output ../v1.2.zip v1.2 # 打包v1.2標(biāo)簽的文件囊骤,保存在上一級(jí)目錄v1.2.zip文件中
$ git archive --format=zip v1.2 > ../v1.2.zip # 作用同上一條命令</pre>

git打包命令會(huì)自動(dòng)忽略.gitignore中指定的目錄和文件貌矿,以及.git目錄示括。

11 全局和局部配置

  • 全局配置保存在:$Home/.gitconfig
  • 本地倉(cāng)庫(kù)配置保存在:.git/config

12 遠(yuǎn)程與本地合并

如果在遠(yuǎn)程創(chuàng)建了代碼倉(cāng)秘通,而且已經(jīng)初始化为严,本地是具體的源代碼,那么工作流程應(yīng)該是:

<pre style="margin: 0px; padding: 0px; white-space: pre-wrap; overflow-wrap: break-word; font-family: "Courier New" !important; font-size: 12px !important;">git init # 初始化本地代碼倉(cāng) git add . # 添加本地代碼
git commit -m "add local source" # 提交本地代碼 git pull origin master # 下載遠(yuǎn)程代碼
git merge master # 合并master分支 git push -u origin master # 上傳代碼</pre>

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末肺稀,一起剝皮案震驚了整個(gè)濱河市第股,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌话原,老刑警劉巖夕吻,帶你破解...
    沈念sama閱讀 221,406評(píng)論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異繁仁,居然都是意外死亡涉馅,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,395評(píng)論 3 398
  • 文/潘曉璐 我一進(jìn)店門黄虱,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)稚矿,“玉大人,你說我怎么就攤上這事捻浦∥畲В” “怎么了?”我有些...
    開封第一講書人閱讀 167,815評(píng)論 0 360
  • 文/不壞的土叔 我叫張陵默勾,是天一觀的道長(zhǎng)碉渡。 經(jīng)常有香客問我,道長(zhǎng)母剥,這世上最難降的妖魔是什么滞诺? 我笑而不...
    開封第一講書人閱讀 59,537評(píng)論 1 296
  • 正文 為了忘掉前任形导,我火速辦了婚禮,結(jié)果婚禮上习霹,老公的妹妹穿的比我還像新娘朵耕。我一直安慰自己,他們只是感情好淋叶,可當(dāng)我...
    茶點(diǎn)故事閱讀 68,536評(píng)論 6 397
  • 文/花漫 我一把揭開白布阎曹。 她就那樣靜靜地躺著,像睡著了一般煞檩。 火紅的嫁衣襯著肌膚如雪处嫌。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 52,184評(píng)論 1 308
  • 那天斟湃,我揣著相機(jī)與錄音熏迹,去河邊找鬼。 笑死凝赛,一個(gè)胖子當(dāng)著我的面吹牛注暗,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播墓猎,決...
    沈念sama閱讀 40,776評(píng)論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼捆昏,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來(lái)了毙沾?” 一聲冷哼從身側(cè)響起骗卜,我...
    開封第一講書人閱讀 39,668評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎搀军,沒想到半個(gè)月后膨俐,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 46,212評(píng)論 1 319
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡罩句,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,299評(píng)論 3 340
  • 正文 我和宋清朗相戀三年焚刺,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片门烂。...
    茶點(diǎn)故事閱讀 40,438評(píng)論 1 352
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡乳愉,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出屯远,到底是詐尸還是另有隱情蔓姚,我是刑警寧澤,帶...
    沈念sama閱讀 36,128評(píng)論 5 349
  • 正文 年R本政府宣布慨丐,位于F島的核電站坡脐,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏房揭。R本人自食惡果不足惜备闲,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,807評(píng)論 3 333
  • 文/蒙蒙 一晌端、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧恬砂,春花似錦咧纠、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,279評(píng)論 0 24
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)。三九已至狱掂,卻和暖如春演痒,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背符欠。 一陣腳步聲響...
    開封第一講書人閱讀 33,395評(píng)論 1 272
  • 我被黑心中介騙來(lái)泰國(guó)打工嫡霞, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人希柿。 一個(gè)月前我還...
    沈念sama閱讀 48,827評(píng)論 3 376
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像养筒,于是被迫代替她去往敵國(guó)和親曾撤。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,446評(píng)論 2 359

推薦閱讀更多精彩內(nèi)容

  • 簡(jiǎn)介 ??git有四個(gè)工作區(qū)域晕粪,分別是:工作目錄(Workspace)挤悉、暫存區(qū)(Index/Stage)、本地倉(cāng)庫(kù)...
    gybguohao閱讀 21,056評(píng)論 4 21
  • 查看巫湘、添加装悲、提交、刪除尚氛、找回诀诊,重置修改文件 git help # 顯示command的help git sho...
    Swiftor閱讀 2,120評(píng)論 0 2
  • git常用命令 git config 可選參數(shù)(--system所有用戶、--global當(dāng)前用戶阅嘶、默認(rèn)--loc...
    天痕丶閱讀 328評(píng)論 0 0
  • 配置 首先是配置帳號(hào)信息ssh -T git@github.com # 登陸 github 修改項(xiàng)目中的個(gè)人信息 ...
    guanguans閱讀 742評(píng)論 0 3
  • 我的常用: ===================================** 撤銷工作修改:**1属瓣、gi...
    ddai_Q閱讀 734評(píng)論 0 5