<div id="7x91n"></div>
    <progress id="7x91n"><tr id="7x91n"><ruby id="7x91n"></ruby></tr></progress>

    <em id="7x91n"></em>
      <progress id="7x91n"></progress>

      <dl id="7x91n"><ins id="7x91n"></ins></dl>

          <div id="7x91n"></div>

          <dl id="7x91n"></dl>

          <dl id="7x91n"><ins id="7x91n"><thead id="7x91n"></thead></ins></dl>

            <div id="7x91n"><tr id="7x91n"></tr></div>

            <div id="7x91n"></div>
            <div id="7x91n"></div>
            <dl id="7x91n"></dl><dl id="7x91n"><ol id="7x91n"></ol></dl>
            首頁 > 其他 > 詳細

            [轉]GIT 常用命令

            時間:2018-09-23 10:59:49      閱讀:66      評論:0      收藏:0      [點我收藏+]

            標簽:一個   grep   log   hive   oba   上傳   cached   ber   first   

            本文轉自:http://www.cnblogs.com/chenwolong/p/GIT.html

            學無止境,精益求精!

            十年河東,十年河西,莫欺少年窮!

            學歷代表你的過去,能力代表你的現在,學習代表你的將來!

            本篇博客是轉發的別人的,原文地址:http://www.ruanyifeng.com/blog/2015/12/git-cheat-sheet.html

            很久沒寫博客了,都是工作太忙鬧的,索性今兒轉發一篇!省的博客園太冷清了...

            Git圖形化界面我用的還可以,但是命令就不太會了,索性和大家一起學習下Git命令的用法...

            一般來說,日常使用只要記住下圖6個命令,就可以了。但是熟練使用,恐怕要記住60~100個命令。

            技術分享圖片

            下面是我整理的常用 Git 命令清單。幾個專用名詞的譯名如下。

            • Workspace:工作區
            • Index / Stage:暫存區
            • Repository:倉庫區(或本地倉庫)
            • Remote:遠程倉庫

            一、新建代碼庫

            
            # 在當前目錄新建一個Git代碼庫
            $ git init
            
            # 新建一個目錄,將其初始化為Git代碼庫
            $ git init [project-name]
            
            # 下載一個項目和它的整個代碼歷史
            $ git clone [url]
            

            二、配置

            Git的設置文件為.gitconfig,它可以在用戶主目錄下(全局配置),也可以在項目目錄下(項目配置)。

            
            # 顯示當前的Git配置
            $ git config --list
            
            # 編輯Git配置文件
            $ git config -e [--global]
            
            # 設置提交代碼時的用戶信息
            $ git config [--global] user.name "[name]"
            $ git config [--global] user.email "[email address]"
            

            三、增加/刪除文件

            
            # 添加指定文件到暫存區
            $ git add [file1] [file2] ...
            
            # 添加指定目錄到暫存區,包括子目錄
            $ git add [dir]
            
            # 添加當前目錄的所有文件到暫存區
            $ git add .
            
            # 添加每個變化前,都會要求確認
            # 對于同一個文件的多處變化,可以實現分次提交
            $ git add -p
            
            # 刪除工作區文件,并且將這次刪除放入暫存區
            $ git rm [file1] [file2] ...
            
            # 停止追蹤指定文件,但該文件會保留在工作區
            $ git rm --cached [file]
            
            # 改名文件,并且將這個改名放入暫存區
            $ git mv [file-original] [file-renamed]
            

            四、代碼提交

            
            # 提交暫存區到倉庫區
            $ git commit -m [message]
            
            # 提交暫存區的指定文件到倉庫區
            $ git commit [file1] [file2] ... -m [message]
            
            # 提交工作區自上次commit之后的變化,直接到倉庫區
            $ git commit -a
            
            # 提交時顯示所有diff信息
            $ git commit -v
            
            # 使用一次新的commit,替代上一次提交
            # 如果代碼沒有任何新變化,則用來改寫上一次commit的提交信息
            $ git commit --amend -m [message]
            
            # 重做上一次commit,并包括指定文件的新變化
            $ git commit --amend [file1] [file2] ...
            

            五、分支

            
            # 列出所有本地分支
            $ git branch
            
            # 列出所有遠程分支
            $ git branch -r
            
            # 列出所有本地分支和遠程分支
            $ git branch -a
            
            # 新建一個分支,但依然停留在當前分支
            $ git branch [branch-name]
            
            # 新建一個分支,并切換到該分支
            $ git checkout -b [branch]
            
            # 新建一個分支,指向指定commit
            $ git branch [branch] [commit]
            
            # 新建一個分支,與指定的遠程分支建立追蹤關系
            $ git branch --track [branch] [remote-branch]
            
            # 切換到指定分支,并更新工作區
            $ git checkout [branch-name]
            
            # 切換到上一個分支
            $ git checkout -
            
            # 建立追蹤關系,在現有分支與指定的遠程分支之間
            $ git branch --set-upstream [branch] [remote-branch]
            
            # 合并指定分支到當前分支
            $ git merge [branch]
            
            # 選擇一個commit,合并進當前分支
            $ git cherry-pick [commit]
            
            # 刪除分支
            $ git branch -d [branch-name]
            
            # 刪除遠程分支
            $ git push origin --delete [branch-name]
            $ git branch -dr [remote/branch]
            

            六、標簽

            
            # 列出所有tag
            $ git tag
            
            # 新建一個tag在當前commit
            $ git tag [tag]
            
            # 新建一個tag在指定commit
            $ git tag [tag] [commit]
            
            # 刪除本地tag
            $ git tag -d [tag]
            
            # 刪除遠程tag
            $ git push origin :refs/tags/[tagName]
            
            # 查看tag信息
            $ git show [tag]
            
            # 提交指定tag
            $ git push [remote] [tag]
            
            # 提交所有tag
            $ git push [remote] --tags
            
            # 新建一個分支,指向某個tag
            $ git checkout -b [branch] [tag]
            

            七、查看信息

            
            # 顯示有變更的文件
            $ git status
            
            # 顯示當前分支的版本歷史
            $ git log
            
            # 顯示commit歷史,以及每次commit發生變更的文件
            $ git log --stat
            
            # 搜索提交歷史,根據關鍵詞
            $ git log -S [keyword]
            
            # 顯示某個commit之后的所有變動,每個commit占據一行
            $ git log [tag] HEAD --pretty=format:%s
            
            # 顯示某個commit之后的所有變動,其"提交說明"必須符合搜索條件
            $ git log [tag] HEAD --grep feature
            
            # 顯示某個文件的版本歷史,包括文件改名
            $ git log --follow [file]
            $ git whatchanged [file]
            
            # 顯示指定文件相關的每一次diff
            $ git log -p [file]
            
            # 顯示過去5次提交
            $ git log -5 --pretty --oneline
            
            # 顯示所有提交過的用戶,按提交次數排序
            $ git shortlog -sn
            
            # 顯示指定文件是什么人在什么時間修改過
            $ git blame [file]
            
            # 顯示暫存區和工作區的代碼差異
            $ git diff
            
            # 顯示暫存區和上一個commit的差異
            $ git diff --cached [file]
            
            # 顯示工作區與當前分支最新commit之間的差異
            $ git diff HEAD
            
            # 顯示兩次提交之間的差異
            $ git diff [first-branch]...[second-branch]
            
            # 顯示今天你寫了多少行代碼
            $ git diff --shortstat "@{0 day ago}"
            
            # 顯示某次提交的元數據和內容變化
            $ git show [commit]
            
            # 顯示某次提交發生變化的文件
            $ git show --name-only [commit]
            
            # 顯示某次提交時,某個文件的內容
            $ git show [commit]:[filename]
            
            # 顯示當前分支的最近幾次提交
            $ git reflog
            # 從本地master拉取代碼更新當前分支:branch 一般為master $ git rebase [branch]

            八、遠程同步

            
            # 下載遠程倉庫的所有變動
            $ git fetch [remote]
            
            # 顯示所有遠程倉庫
            $ git remote -v
            
            # 顯示某個遠程倉庫的信息
            $ git remote show [remote]
            
            # 增加一個新的遠程倉庫,并命名
            $ git remote add [shortname] [url]
            
            # 取回遠程倉庫的變化,并與本地分支合并
            $ git pull [remote] [branch]
            
            # 上傳本地指定分支到遠程倉庫
            $ git push [remote] [branch]
            
            # 強行推送當前分支到遠程倉庫,即使有沖突
            $ git push [remote] --force
            
            # 推送所有分支到遠程倉庫
            $ git push [remote] --all
            

            九、撤銷

            
            # 恢復暫存區的指定文件到工作區
            $ git checkout [file]
            
            # 恢復某個commit的指定文件到暫存區和工作區
            $ git checkout [commit] [file]
            
            # 恢復暫存區的所有文件到工作區
            $ git checkout .
            
            # 重置暫存區的指定文件,與上一次commit保持一致,但工作區不變
            $ git reset [file]
            
            # 重置暫存區與工作區,與上一次commit保持一致
            $ git reset --hard
            
            # 重置當前分支的指針為指定commit,同時重置暫存區,但工作區不變
            $ git reset [commit]
            
            # 重置當前分支的HEAD為指定commit,同時重置暫存區和工作區,與指定commit一致
            $ git reset --hard [commit]
            
            # 重置當前HEAD為指定commit,但保持暫存區和工作區不變
            $ git reset --keep [commit]
            
            # 新建一個commit,用來撤銷指定commit
            # 后者的所有變化都將被前者抵消,并且應用到當前分支
            $ git revert [commit]
            
            # 暫時將未提交的變化移除,稍后再移入
            $ git stash
            $ git stash pop
            

            十、其他

            
            # 生成一個可供發布的壓縮包
            $ git archive

             

            [轉]GIT 常用命令

            標簽:一個   grep   log   hive   oba   上傳   cached   ber   first   

            原文:https://www.cnblogs.com/freeliver54/p/9692023.html

            (0)
            (0)
               
            舉報
            評論 一句話評論(0
            0條  
            登錄后才能評論!
            ? 2014 bubuko.com 版權所有 魯ICP備09046678號-4
            打開技術之扣,分享程序人生!
                         

            魯公網安備 37021202000002號

            福建省餐饮许可现场