1.1 從遠端倉庫中轉殖整個**倉庫
mkdir demo //在當前路徑下新建乙個資料夾,用來存放將要拉取的整個**庫
cd demo //進入這個資料夾
repo init -u ssh: -b master
//-u :指定乙個url,其連線到乙個manifest倉庫
//-m:在manifest倉庫中選擇乙個xml檔案
//manifest:manifest是遠端倉庫裡的乙份清單,init的時候就是按照這份清單從伺服器進行同步的
//-b:表示後接分支名,可以是master,也可以是其他分支
repo sync //這是乙個封裝的命令,用來同步**。 上一步應該用時比較少,這一步用時較長
repo start master --all //這也是乙個封裝的命令,用來切分支的。這一步不可缺少 ,意為將拉下來的版本庫都切換到master分支,如果不做這一步,轉殖下來的所有倉庫預設是no branch狀態,容易導致後面工作時新增的**丟失
1.2 轉殖單個倉庫
git clone 從遠端庫中轉殖,轉殖乙個版本庫到新的目錄,可以在當前目錄新建乙個資料夾,也可以git clone [位址] [本地目錄]
git clone ssh: // 同上,
之後 git pull origin master //origin是遠端主機,master是預設分支
要轉殖乙個倉庫,首先必須知道倉庫的位址,然後使用git clone
命令轉殖。
git支援多種協議,包括https
,但通過ssh
支援的原生git
協議速度最快
單一倉庫的更新可以使用git pull命令。
repo init完成的操作如下:
(3):轉殖的清單庫位於manifest.git中,轉殖到本地.repo/manifests.清單,.repo/manifest.xml只是符號鏈結,它指向.repo/manifests/default.xml檔案,
repo sync:用於參照清單檔案.repo/manifest.xml轉殖並同步版本庫。如果某個版本庫尚不存在,則執行repo sync命令相當於執行git clone。如果專案版本庫已經存在,則相當於執行下面的兩條指令:
(1):git remote update //相當於對每乙個remote源執行了fetch操作
(2):git rebase origin/branch //針對當前分支的跟蹤分支執行rebase操作
repo start:建立並切換分支,是對git checkout -b命令的封裝 //如果存在分支則切換分支,若不存在則建立並切換
區別是repo start 是在清單檔案設定分支的基礎上建立特性分支,git checkout是在當前所在分支的基礎上建立特性分支,如果是針對於整個版本庫,那麼相當於 repo forall -c git checkout -b
題外:在使用這些命令轉殖倉庫之前,我們是需要配置一些環境,如ssh的key,使用者名稱,郵箱名等等
如果公司使用的是私有github,在初始化倉庫之前需要若是初始化倉庫的時候出現提示倉庫已經初始化,那麼可以嘗試刪除本地的.repo
學習無他法,唯有持之以恆
git從遠端轉殖倉庫
首先,登陸github,建立乙個新的倉庫,名字叫gitskills 我們勾選initialize this repository with a readme,這樣github會自動為我們建立乙個readme.md檔案。建立完畢後,可以看到readme.md檔案 現在,遠端庫已經準備好了,下一步是用命...
git學習 建立倉庫轉殖倉庫
為什麼使用命令,使用命令有助於我們理解git的工作流程,那麼加入我們的專案不小心出錯了,就能更快的想到哪一部出了問題。使用git命令版我們使用windows的使用者就應該有個敲命令的工具,程式設計師還是感覺敲 更帥,git官網為我們提供了原生的git命令工具 git使用命令建立倉庫 首先我們到我們想...
Git 從遠端倉庫轉殖
本人拜讀了廖雪峰老師關於git的講述後整理所得 上次我們講了先有本地庫,後有遠端庫的時候,如何關聯遠端庫。現在,假設我們從零開發,那麼最好的方式是先建立遠端庫,然後,從遠端庫轉殖。首先,登陸github,建立乙個新的倉庫,名字叫clonetest git clone git github.com l...