碼雲gitee+git入門篇(二)——代碼託管

書接上回:碼雲gitee+git入門篇(一)——簡介、git安裝
繼對gitee和git的簡單介紹以及git安裝之後,這篇博客主要介紹如何使用git命令,從而在碼雲上進行代碼託管。
首先,參考碼雲平臺幫助文檔先介紹一下git中的幾個重要概念:分支、提交、拉取和推送,有助於幫助理解下面的內容。

1. 分支(git branch命令)

git默認分支一般是master,當然,這是可以修改的,我們在master完成一次開發,生成了一個穩定版本,那麼當需要添加新功能或者做修改時,只需要新建一個分支,然後在該分支上開發,完成後合併到主分支即可,分支功能解決了正在開發的版本與上線版本穩定性衝突的問題。

2. 提交(git commit命令)

git對於版本的管理其實是對提交的管理,git使用40個字節長度的16進制字符串來標識每一個提交,每一個提交具有唯一的標識,根據這個標識可以任意回退。

3. 拉取(git pull命令)

用於取回遠程倉庫某個分支的更新,再與本地倉庫合併。

4. 推送(git push命令)

用於把本地的代碼更新到遠程倉庫。

一、創建遠程代碼倉庫
1. 登陸gitee賬號:
這裏寫圖片描述
2. 新建項目:
這裏寫圖片描述
點擊新建後,可以看到遠程代碼倉庫創建成功,並且有一個README.md文件:
這裏寫圖片描述

二、創建本地代碼倉庫
1. 在本地一個盤下新建一個文件夾,當作本地代碼倉庫,也就是說希望之後這個文件夾裏的文件的改動都能被git進行管理。
例如我在F盤內新建一個名爲testGit的文件夾:
這裏寫圖片描述
2. 在該文件內按住Shift鍵並點擊鼠標右鍵,選擇”在此處打開Powershell窗口“,bash,進入Linux環境(剛安裝了Ubuntu,因爲打算學點Linux命令,嘿嘿,如果沒有安裝Ubuntu,就不需要bash,直接執行git命令就行)執行代碼:

git init

這裏寫圖片描述
這句話的意思是初始一個本地倉庫,之後可以看到在該文件夾下多了一個.git文件夾,用於記錄所有與管理本倉庫相關的文件,
所以請小心改動。
這裏寫圖片描述

三、進行代碼託管
本地代碼倉庫和遠程代碼倉庫都創建好之後,需要把它們進行同步才能在gitee上進行代碼託管。

1.本地代碼倉庫與遠程代碼倉庫進行同步,執行代碼:

git remote add origin https://gitee.com/gxx_gitee/testGit.git

其中遠程庫的名字就是origin,這是git默認的叫法,也可以改成別的,但是origin這個名字一看就知道是遠程庫。

我試驗過origin可以改爲項目名,或者和項目名不同也都是可以的,因爲重要的是後面的url,每個遠程代碼庫都有一個自己的url,
所以本地倉庫本質上是和這個url所指代的遠程倉庫進行關聯的。
這裏寫圖片描述

2.拉取遠程代碼庫
由於在創建遠程倉庫時會初始化一個README.md文件,而本地倉庫裏沒有,所以需要先執行pull操作將遠程倉庫拉取合併到本地倉庫,否則會出錯。執行代碼:

git pull origin master

這裏寫圖片描述
注1:由於在本地創建了代碼倉庫,git默認關聯的庫在本地,所以直接執行git pull命令是無效的,需要執行git pull origin master命令才行,這句話的意思是推送到遠程庫master分支,此外,也可以根據提示執行一下git branch --set-upstream origin master命令,以後就可以直接使用git pull了】

此時可以看到在本地代碼倉庫中多了一個README.md文件。
這裏寫圖片描述

注2:如果遇到錯誤提示“fatal: refusing to merge unrelated histories”,出現這種錯誤是因爲git會以爲這兩個倉庫不同所以進行無法合併,在執行pull操作時添加–allow-unrelated-histories,即執行git pull origin master --allow-unrelated-histories就可以了】

3.向遠程代碼倉庫推送文件(例如在本地代碼倉庫中新建了test1.txt和test2.txt文件,現把它們同步到遠程代碼倉庫),執行代碼:

git add .
git commit -m "對該操作的相關描述"

這裏寫圖片描述
可以看到,git追蹤到了倉庫中文件的變化,所以說git起到了作用。現在執行push操作將它推送到遠程代碼庫:

git push
git push --set-upstream origin master

這裏寫圖片描述
注3:這裏使用git push命令會和上面使用git pull時出現同樣的問題,根據提示git push --set-upstream origin master,以後就可以直接使用git push命令了】
刷新遠程代碼倉庫,可以看到文件被成功的同步到了遠程倉庫:
這裏寫圖片描述

當然,同步一個文件夾到遠程倉庫與同步單個文件相同,只不過無法同步空文件夾到遠程倉庫,因爲git會認爲沒有改動。

參考連接:https://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000,感謝作者。

【說明】:
很明顯,這種方式在代碼倉庫同步上比較繁瑣,所以我也不是很推薦,但是理解這種方式還是很重要的,下面介紹一種簡單點的方式。


一、創建遠程代碼倉庫
同上。例如我在gitee上創建了項目testGit1,每個遠程代碼庫都有一個自己的url:
這裏寫圖片描述
二、克隆項目到本地
在本地一個盤下按住Shift鍵並點擊鼠標右鍵,選擇”在此處打開Powershell窗口“,bash,進入Linux環境(如果沒有安裝Ubuntu,就不需要bash,直接執行git命令就行)執行代碼:

git clone 項目的url

這裏寫圖片描述
然後就會發現在該盤下面就有了一個同名文件夾,並且.git目錄和README.md文件都有,這兩個代碼倉庫都已經同步好了:
這裏寫圖片描述

三、進行代碼託管
向遠程代碼倉庫同步文件(例如在本地代碼倉庫中新建了test1.txt和test2.txt文件,現把它們同步到遠程代碼倉庫),進入到該文件下,執行代碼:

git add .
git commit -m "對該操作的相關描述"

這裏寫圖片描述
可以看到,git追蹤到了倉庫中文件的變化,所以說git起到了作用。現在執行push操作將它推送到遠程代碼庫:

git push

這裏寫圖片描述

注4:這裏可以直接使用git push命令,因爲遠程創建了代碼倉庫,git默認關聯的庫在遠程,git push是默認推送到遠程庫master分支】
刷新遠程代碼倉庫,可以看到文件被成功的同步到了遠程倉庫:
這裏寫圖片描述

【說明】:
很明顯,這種方式就簡單多啦~
使用git命令時遇到的很多問題,其實根據錯誤提示都可以自己修正,或者可以直接執行git查看git命令,對於具體某個命令的使用可以執行git 命令的名字 -help查看詳情。

發佈了53 篇原創文章 · 獲贊 108 · 訪問量 30萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章