日韩黑丝制服一区视频播放|日韩欧美人妻丝袜视频在线观看|九九影院一级蜜桃|亚洲中文在线导航|青草草视频在线观看|婷婷五月色伊人网站|日本一区二区在线|国产AV一二三四区毛片|正在播放久草视频|亚洲色图精品一区

分享

git 常用命令

 文檔客 2018-09-11

git是現(xiàn)在最流行的版本控制工具。與CVS、Subversion一類的集中式版本控制工具不同,它采用了分布式版本庫(kù)的作法,不需要服務(wù)器端軟件,就可以運(yùn)作版本控制,使得源代碼的發(fā)布和交流極其方便。git的速度很快,git最為出色的是它的合并追蹤(merge tracing)能力。

創(chuàng)建庫(kù)

  • 克隆一個(gè)已存在的庫(kù) bash $ git clone https://github.com/user/repo.git [DirName] 或者 $ git clone git@github.com:user/repo.git [DirName] 其中,user為用戶名,repo為需要克隆的庫(kù)名,DirName為可選,默認(rèn)值為庫(kù)的名稱repo
  • 新建本地庫(kù) bash $ git init

本地修改

  • 查看本地工作目錄下的文件變化 bash $ git status
  • 已跟蹤文件(tracked files)的變化 bash $ git diff
  • 將本地所有修改加入到下次提交(commit)中: bash $ git add .
  • 文件中的改變加入到下次commit中: bash $ git add -p <file>
  • 提交跟蹤文件在本地的修改: bash $ git commit -a
  • 提交在工作臺(tái)中的修改 bash $ git commit
  • 修改最近一次的commit(不要修改已經(jīng)published的commit) bash $ git commit --amend

Commit歷史記錄

  • 從最新的一次開始,羅列所有提交 bash $ git log
  • 查看某一文件的所有commit記錄 bash $ git log -p <file>
  • 查看某一文件的修改記錄-Who,When,What bash $ git blame <file>

分支與標(biāo)簽(Branch & Tag)

  • 列出所以存在的分支 bash $ git branch -av
  • 把HEAD移到分支上(轉(zhuǎn)到分支上) bash $ git checkout <branch>
  • 基于目前的HEAD創(chuàng)建新分支 bash $ git branch <new-branch>
  • 創(chuàng)建全新的分支 bash $ git checkout --orphan <branch>
  • 創(chuàng)建遠(yuǎn)程分支的跟蹤分支 bash $ git checkout --track <remote/branch>
  • 刪除本地分支 bash $ git branch -d <branch>
  • 給當(dāng)前的commit打標(biāo)簽 bash $ git tag <tag-name>

更新與提交

  • 列出所有遠(yuǎn)程倉(cāng)庫(kù) bash $ git remote -v
  • 查看遠(yuǎn)程倉(cāng)庫(kù)的信息 bash $ git remote show <remote>
  • 添加名為的新遠(yuǎn)程庫(kù) bash $ git remote add <shortname> <url>
  • 從遠(yuǎn)程庫(kù)下載所有修改,但不要加入到HEAD中 bash $ git fetch <remote>
  • 下載修改并合并/加入到 HEAD中 bash $ git pull <remote> <branch>
  • 把本地修改推送(push)到遠(yuǎn)程庫(kù) bash $ git push <remote> <branch>
  • 刪除遠(yuǎn)程庫(kù)上的分支 bash $ git branch -dr <remote/branch>
  • push標(biāo)簽 bash $ git push --tags
  • push某一具體標(biāo)簽 bash $ git push <remote> <tag>

合并與編輯(merge & Rebase)

  • 合并分支到當(dāng)前HEAD中 bash $ git merge <branch>
  • 把當(dāng)前HEAD變到分支上

    $ git rebase <branch>

    不要對(duì)已經(jīng)push的commits進(jìn)行rebase

  • 放棄rebase

    $ git rebase --abort
  • 解決沖突之后,仍rebase

    $ git rebase --continue
  • 使用自定義的merge工具來(lái)解決沖突

    $ git mergetool
  • 使用自定義的編輯器來(lái)手動(dòng)解決沖突并在解決沖突之后標(biāo)記為已解決

    $ git add <resolved-file>
    $ git rm <resolved-file>

撤銷Undo

  • 放棄在工作目錄中的所有本地修改 bash $ git reset --hard HEAD
  • 放棄某一文件中的本地修改 bash $ git checkout HEAD <file>
  • 回復(fù)(revert)某次commit bash $ git revert <commit>
  • 重置HEAD指向某次commit:并放棄之后的所有修改
  • …并放棄之后的所有修改 bash $ git reset --hard <commit>
  • …并把之后的修改保存到unstaged changes bash $ git reset <commit>
  • …并保留本地沒有commit的修改: bash $ git reset --keep <commit>

最基礎(chǔ)

git init [<Project-Name>]                       #默認(rèn)當(dāng)前目錄,否則新建<Project-Name>這個(gè)目錄
git add .                                       #把本地修改加入到暫存區(qū)
git commit -m "<commit-message>'                #提交本次修改
git remote add origin <remote-repo>             #添加遠(yuǎn)程庫(kù)
git push origin <local-branch>:<remote-branch>  #push到遠(yuǎn)程

最后!

神器:Help命令~

$ git help <command>
原文作者: Quanyin Tang
發(fā)布時(shí)間:
本文鏈接: https://quanyin./2017/10/git-cheet-sheet/
版權(quán)聲明: 本博客所有文章除特別聲明外,均采用 (CC) BY-NC-SA 4.0 許可協(xié)議。轉(zhuǎn)載請(qǐng)注明作者和出處并告知!


若您覺得我的文章對(duì)您有幫助,歡迎點(diǎn)擊上方按鈕對(duì)我打賞

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購(gòu)買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多