<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                合規國際互聯網加速 OSASE為企業客戶提供高速穩定SD-WAN國際加速解決方案。 廣告
                ## 參考資料: * [git checkout官方API](https://git-scm.com/docs/git-checkout) * [git-修改撤銷-廖雪峰](http://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000/001374831943254ee90db11b13d4ba9a73b9047f4fb968d000) * [git checkout詳解](http://www.tuicool.com/articles/A3Mn6f) ## 實踐總結: * `git checkout` 的使用可以很復雜(具體用法,請打開以上參考資料), 但日常生產中常用的有: * 1.回退文件;(從暫存區、從本地倉庫) * 2.切換分支(包括新建、切換); ## git checkout 常用指令: * git checkout -- a.txt * **暫存區** 中的 a.txt文件 覆蓋 工作區間的 a.txt,使用時注意路徑; * git checkout -- . * 將**暫存區**中的所有文件,覆蓋工作區間,當前的所有修改均會被覆蓋;(不存在 git checkout -- -A, git checkout -- *,其他類似指令參照 [git_add.md](https://github.com/wteam-xq/testGit/blob/master/learn_log/git_add.md) ) * git checkout head a.txt * 將 **本地倉庫** 中的a.txt文件覆蓋 工作區間的 a.txt,使用時注意路徑; * git checkout head . * 將 **本地倉庫** 所有代碼覆蓋工作區間,當前的所有修改均會被覆蓋,謹慎使用;(不存在 git checkout head -A, git checkout head *,其他類似指令參照 [git_add.md](https://github.com/wteam-xq/testGit/blob/master/learn_log/git_add.md) ) * git checkout dev * 切換到一個叫 “dev” 的分支; * git checkout remotes/origin/master * 將當前分支切換到遠程分支; * git checkout -b dev * 基于當前分支創建一個叫“dev”的分支,然后切換過去;如果創建的分支名已存在會報錯, 如參數換成`-B`則不會報錯, 因為會將原同名分支覆蓋掉(謹慎使用); * git checkout -b newBranch origin newBranch * 基于當前分支創建一名為`newBranch`的分支,并切換過去且關聯遠程同名分支;相當于`git checkout -b newBranch` + `git branch --set-upstream-to=origin/newBranch newBranch` * git checkout --orphan dev * 基于當前分支創建一個叫“dev”的分支,然后切換過去;假如你的某個分支上,積累了無數次的提交,你也懶得去打理,打印出的log也讓你無力吐槽,那么這個命令將是你的神器,它會基于當前所在分支新建一個赤裸裸的分支,沒有任何的提交歷史,但是當前分支的內容一一俱全。 * git checkout 0d1d7fc32 * 0d1d7fc32為commitId, 代碼處于 detached 狀態, 提交commit 會新生成一個分支(臨時分支); * git checkout -b old-branch-name 0d1d7fc32 * 相當于 `git branch old-branch-name 0d1d7fc32` + `git checkout old-branch-name` 基于當時的commit恢復分支;(old-branch-name已被刪除,且0d1d7fc32為old-branch-name分支上的提交) ## 相關指令: * [git reset](http://www.hmoore.net/wteamxq/git_rank/277266) 代碼撤銷(回退): 配合`git log`,我的回退實用性可以完爆`git checkout`;
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看