用git從遠程倉庫clone非master分支到本地

    (1)對於熟悉git的人來說,此文可以略過不看。

    (2)如果有像我一樣,不太記得住命令或者還不太熟悉git的,可以快速看一下命令,提高效率,可以避免因爲自己記不住或者記差導致一些錯誤。

    (3)如果有同學對這操作僅限於git clone master分支的,可以仔細看一下,都是我自己結合網上的博客和自己的實際操作總結的步驟和命令,親測可用。

   (4) 大家可以把這篇博客收藏,以後隨時來找命令和操作步驟,並沒有什麼阻礙。

     

     好,言歸正傳。

    一、背景

            其實,對於大家而言,用的最多最熟就是“  git clone master地址  "這種命令。一般而言,如果是我們自己做項目的開發,上傳到github或者gitlab倉庫,以及從倉庫clone都是master分支,所以可能遇不到別的分支的問題。

             但是,如果是與別人合作開發,或者,進入公司以後,大家一起開發某一個大的項目,這時的情況是這樣的:團隊有一個master分支在遠程倉庫,團隊裏面的每個人都可以把這個master分支clone到本地各自開發功能,然後再上傳到遠程master分支合併。

              那麼問題來了,在你上傳你的分支(本地master或者別的分支)到倉庫以後,你能不能和master分支合併呢?

              答案:不能。 因爲master分支只有一個,這個master分支以後是要上線的。你的分支如果直接和master合併以後,把master整崩了怎麼辦?雖然你在本地跑起來沒有問題。然後還有一個和別人的分支整合的過程。所以,一般過程是這樣的:大家都把自己的代碼上傳到遠程的分支(自己創建),再經過測試和團隊確認以後纔會合master合併成爲新的master分支,從而推進項目的整體前進。這個master是有權限的。

               所以,我們對代碼的修改都是基於遠程的分支的。因此,我們應該對2個操作熟悉:

               1.  從遠程倉庫  git clone  分支 到本地開發,修改。這個部分下面會講。

               2.  將本地分支上傳到遠程的自己的分支(非master分支)。這個我就放在下個博客講了。


      二、從遠程倉庫clone非master分支到本地

               這裏分兩種情況:

              (1) 本地已經有master分支或者某個分支

                     這個很簡單,

                     a) 打開  git bash  窗口  (該步驟非必需)

                                輸入:  git branch -r或者-a    查看遠程的所有分支

                      b) 用   git checkout   命令

                                輸入:  git checkout origin /分支名

                      c) 當前本地即爲上面你切換的分支。

                            測試一下:
                                輸入:  git  branch
                                顯示:  * 上面你切換的分支名  (* ,分支顏色爲綠色;表示是當前選定的分支
                                               master

              (2) 如果本地還什麼都沒有,然後要 git clone 遠程倉庫的某個分支(非master)

                      

                          這個的步驟如下:

                          a) 在本地新建文件夾

                          b) git init  ,讓該文件夾成爲倉庫repository
                          c) 與遠程倉庫建立連接
                              git remote add origin  遠程倉庫的master地址,以 .git 結尾
                          d) 下載master或者其他分支
                              這裏有兩個做法,結果是不一樣的。
                               
                                1、 直接下載遠程倉庫上的某個分支
                                      ->>   git clone -b 分支名  master地址(以 .git結尾)
                                      ->>  然後,輸入username 、 password即可clone。
                                
                                這樣的後果是:
                                       會把遠程的分支clone成爲本地的master分支
                               此時,打開git bash窗口: 輸入: git branch -r或者-a   看不到任何分支。

                                2、 另一種方法:可以在本地切換分支(推薦)
                                         ->>   git clone  遠程master地址(以 ,git結尾
                                         ->>   成功以後,可以在git bash窗口輸入:
                                                 git branch -r或-a   可以顯示遠程倉庫的所有分支;
                                                 git branch              可以查看當前本地的分支(如果是master,則顯示master)
                                        然後,
                                         ->>   在本地切換到某個分支,用  git checkout  命令:
                                                  git checkout -b 分支名  origin/分支名

                                         ->>    切換成功
                                                     當前本地爲 上面你切換的分支。
                                                     測試一下:
                                                          輸入: git  branch
                                                          顯示:  * 上面你切換的分支名  (* ,分支顏色爲綠色;表示是當前選定的分支
                                                                         master

               以上,就是用git從遠程倉庫clone非master分支到本地的方法、命令和步驟,親測可用。

               題外:將本地分支上傳到遠程的自己的分支(非master分支)。這個在下一個博客,有需要看一下的可以順手點擊。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章