1. 程式人生 > 實用技巧 >本地專案程式碼上傳到遠端GitLab倉庫

本地專案程式碼上傳到遠端GitLab倉庫

前言

情況一:專案在本地從零開發,未commit或者pull過任何Git版本,需要將自己本地的專案上傳到GitLab新建的專案中。

情況二:專案是從遠端clone到本地進行開發的,需要將該專案遷移到新建的GitLab專案中。

本文只針對第一種情況進行詳細說明。

本文使用Git命令列操作。

步驟

一 、在GitLab上新建Git倉庫。
GitLab新建專案
GitLab新建專案

點選建立完成之後,生成空的專案倉庫,如下圖:


GitLab新建專案

在介面的下部有命令列指令的說明:


命令列指令

至此,GitLab上的步驟告一段落。

二、建立本地Git倉庫。

直接上程式碼:
1.初始化本地倉庫。在本地專案根目錄中開啟Gti命令列,執行:

git init  //初始化本地倉庫

2.將本地專案的所有檔案新增到暫存區。小數點 “.” ,意為新增資料夾下的所有檔案;也可以將 “.” 換成具體的檔名,如果想新增專案中的指定檔案,那就把 “.” 改為指定檔名即可。

git add .   //將本地專案的所有檔案新增到暫存區

3.將暫存區的檔案提交到本地倉庫,並新增說明資訊:

git commit -m "說明資訊"   

至此,本地專案提交到本地倉庫完成。

三、將本地倉庫程式碼推送到GitLab遠端倉庫。

1.首先,建立本地倉庫和遠端GitLab倉庫的關聯關係:

git remote add origin  https://gitlab*********************.git

在這一步時如果出現錯誤:fatal:remote origin already exists,先清除一下關聯關係:

git remote rm origin

再重新關聯:

git remote add origin  https://gitlab*********************.git

2.檢查關聯是否已建立且正確:

git remote -v

3.將程式碼由本地倉庫上傳到 GitLab 遠端倉庫,依次執行下列語句。
獲取遠端庫與本地同步合併:

git pull --rebase origin master

如果遠端庫不為空必須做這一步,否則後面的提交會失敗,不加這句可能報錯,原因是 GitLab中的 README.md 檔案不在本地倉庫中,可以通過該命令進行程式碼合併。

把當前分支 master 推送到遠端:

git push -u origin master

執行完之後如果無錯誤就上傳成功了,需要提示的是這裡的 master 是 GitLab預設的分支,如果你本地的當前分支不是 master,就用git checkout master命令切換到master分支,如果你想用本地當前分支上傳程式碼,則把上面兩條命令裡的 master 切換成你的當前分支名即可。

如果推送不成功,先pull一下,如果報錯fatal: refusing to merge unrelated histories,說明本地和遠端的git庫是兩個 根本不相干的 git 庫, 然後本地要去推送到遠端, 遠端覺得這個本地庫跟自己不相干, 所以告知無法合併。解決方法:強制合併:

git pull origin master --allow-unrelated-histories

後面加上 --allow-unrelated-histories ,意思是把兩段不相干的分支進行強行合併。
然後再將程式碼推送到遠端。

至此,操作成功。



原文連結:https://www.jianshu.com/p/c74ae40b5127