GIT項目遷移 之 將本地項目上傳到遠程Git服務器

遷移背景

公司需要將git 服務器上的項目進行備份,因爲項目文件很大無法使用 http 的方式進行備份(提交字節有長度限制),只能使用SSH的方式

思考: 在那些特徵下使用 SSH

1、大型項目(1g…ng) 將代碼上傳到Git 服務器

2、使用SNV管理的大型項目代碼上傳至Git 服務器上

3、Git 項目備份,將一個git 服務器中的項目 備份到另外一個 git 服務項目中

1、廢話少說,你有 SSH祕鑰嗎?

查看字節是否有SSH祕鑰:
c盤→ Users → Administrator ( 你計算機的登錄用戶名 ) → .ssh → id_rsa.pub ( 打開 id_rsa.pub 文件,裏面的內容就是你的SSH祕鑰 )
在這裏插入圖片描述

2、生成 SSH 祕鑰( 需要先在電腦上安裝 Git )

1、先來段完整操作步驟註解

$ ssh-keygen   // 輸入ssh-keygen 後回車
Generating public/private rsa key pair.
Enter file in which to save the key (/c/Users/QY/.ssh/id_rsa): id_rsa      // 這句話是讓你輸入文件名,輸入完>成後按回車,我這裏輸入 id_rsa ,其中 c/Users/QY/.ssh/ 這個路徑就是保存 你接下來生成祕鑰的地方了
Enter passphrase (empty for no passphrase):  // 這裏輸入密碼
Enter same passphrase again: // 這裏輸入確認密碼,和上面的輸入的密碼保持一致
Your identification has been saved in id_rsa. // 這句話說的是身份證已保存在id_rsa 文件中
Your public key has been saved in id_rsa.pub. // 這句話說的是公鑰已保存在id_rsa.pub文件中
The key fingerprint is:
SHA256:tpNY3xLtFm****************IccOzFUzM QY@D*****-******Q  // 這是你的鑰匙指紋

2、操作步驟想看下圖
打開 Git Bash HereGit Bash Here
生成SSH 祕鑰

3、登陸到GitLab賬戶後操作如下圖

登陸後點擊 “個人頭像”→ “Settings”選項→“SSH Keys”
打開設置SSH keys 操作步驟圖
找到生成的id_rsa.pub 文件,將文件中的內容複製
找到生成的SSH 密鑰進行復制將複製的文本粘貼到Key文本框內,最後點擊 Add Key按鈕完成操作將生成的SSH祕鑰粘貼到Key文本框中點擊 Add Key按鈕後將看到如下信息添加完成後我們將看到這些信息

4、使用SSH將已有項目遷移到gitlab中 (大文件導入講會很慢,需要耐心等待)

1.進入項目文件夾,在空白區域單擊鼠標右鍵找到Git Bash Here 選項後單擊打開 git 命令窗口,首先輸入命令 git config --global core.autocrlf false這是因爲LF是UNIX/Linux下換行符,CRLF是DOS/Windows下換行符。Git提供了一個“換行符自動轉換”功能,這個功能默認處於自動模式,通過該命令我們將其關閉
在遷移項目文件中找到 Git Bash Here 選項打開git 命令窗口

git config --global core.autocrlf false

2.在打開的Git 命令窗口輸入命令 git init把這個目錄變成git可以管理的倉庫(請確保你的這個根目錄裏面沒有 .git 文件夾,這個.git 文件夾一般是隱藏目錄,如何查看隱藏目錄這裏就不在贅述

git init

3.把文件添加到版本庫中,使用命令git add .添加到暫存區裏面去,小數點".",意爲添加文件夾下的所有文件 執行這個命令會比較慢,命令需要將所有文件添加到暫存區,請耐心等待

git add .

4.使用命令 git commit告訴Git,把文件提交到倉庫。引號內爲提交說明 執行這個命令會比較慢,命令需要將所有文件提交到暫存區,請耐心等待

git commit -m ‘描述信息:備份項目’

在這裏插入圖片描述

5.使用命令 git remote rm origin刪除原先的遠程庫地址,第一次創建的本地項目則不需要此命令

git remote rm origin

6.使用命令 git remote add origin庫地址,關聯到遠程庫 項目較大時應該使用 SSH 地址而不是使用 http 地址 ,執行這個命令會比較慢,請耐心等待
例如:遠程地址爲:ssh://[email protected]:10022/xxx/xxx.git

git remote add origin ssh://git@gt.xxx.com:10022/xxx/xxx.git

7.使用命令 git pull --rebase origin master獲取遠程庫與本地庫同步合併如果遠程庫不爲空必須做這一步,否則後面的提交會失敗,執行這個命令會比較慢,請耐心等待

git pull --rebase origin master

8.使用命令 git push -u origin master把本地庫的內容推送到遠程,實際上是把當前分支master推送到遠程。執行這個命令會比較慢,請耐心等待執行此命令後會要求輸入用戶名、密碼,驗證通過後即開始上傳如果想要將所有的分支都提交,則使用命令: git push --all origin

git push -u origin master

至此遷移結束

備忘錄:常用Git 命令

克隆項目

git clone 項目地址

拉取項目

git pull

查看狀態

git status

添加暫存文件:點( . ) 表示所有文件或具體文件名

git add .
git add menutest.text

添加提交描述信息

git commit -m ‘描述信息’

推送暫存文件

git push

刪除單個文件

git rm 文件名稱

如果是刪除當前文件夾下所有文件, cd 到你要刪除的目錄下或者 * 可用“”文件夾名“”代替) -r 代表 recursively(遞歸)

git rm * -r

查看所有分支(當前分支以‘*’標記)

git branch

創建分支(如:git branch dev)

git branch

切換分支

git checkout

創建切換分支(如:git checkout -b dev)

git checkout -b

合併分支到當前分支上

git merge

刪除該分支

git branch -d

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