1.倉庫的概念:
1.1 本地倉庫:
? ?了解遠程倉庫前我們先了解一下本地倉庫,本地倉庫開發人員在完成部分代碼的編寫之后,可以將這一部分的代碼做一個提交。這個提交完全就是一個新的版本提交,當然這個提交動作是在開發者的電腦上進行操作的,而且也沒有與外界進行聯系,此次代碼的提交即提交到了本地的版本庫中,這個本地的版本庫就稱為本地倉庫,換言之,本地倉庫就是:對本地代碼進行管理的倉庫。
1.2 遠程倉庫:
? ?通過本地倉庫我就很容易知道遠程倉庫啦,本地倉庫就是一個本地代碼進行管理的倉庫,遠程倉庫是指其他服務器上的倉庫,就是不是本地的倉庫。現在想一下為什么要有遠程倉庫的存在呢?我做一個簡單的列舉,當你進入一家公司,公司給你安排一個項目,而完成項目肯定是在自己的本機上實現,那如何提交給公司呢?這就需要我們遠程倉庫了,每個公司都有自己的庫,當我們完成項目后,通過一些相關的指令就可以把我們本地倉庫的內容提交到遠程倉庫之中。遠程倉庫有公開的,也有私服的,一般的公司倉庫就是私服的,想想也不奇怪,如果一個公司倉庫是公開的,那么公司的技術,其他人不都可以竊取利用了嗎。而目前我們能用到的遠程倉庫有兩種,一個是gitee另一個是GitHub。GitHub是國外的,訪問網速就比較慢,這里我來講述gitee創建自己的遠程倉庫。如果想用GitHub也可以我這里給大家分享一下網址:https://github.com/
2.遠程倉庫的創建:
2.1 網址:https://gitee.com/?
有賬號的自己登陸一下,沒有賬號的自己注冊一下,按照步驟就可以實現,這里我就不演示啦。
2.2創建一個倉庫:
?點這里的?號就是創建倉庫?:
?按要求輸入就行啦,路徑不用輸入,他會自動生成滴,這里我給大家演示一遍~~
?上面三個都不要點!?直接創建就行啦,會顯示如下界面,表示創建成功
?按照操作我們創建好倉庫,然后我們檢查一下
linux
有沒有安裝git
輸入git --version
?如果沒有安裝,輸入sudo apt-get install git安裝
如果倉庫沒有內容,倉庫可能不能開源,所以我們可以先上傳一次,然后我們再開源。具體操作就看下面圖片?
3.如何將本地倉庫的代碼提交到遠程倉庫中?:
3.1?使用 git clone + 倉庫地址克隆倉庫中文件到linux中
git clone https://gitee.com/wei-yaowen/git---remote-warehouse.git
?
若克隆成功則此時文件中會多出剛剛克隆的文件名稱。
3.2 通過git上傳代碼到遠程倉庫(git 三板斧)
git? add .? ? ? ? ? ? ? ? ?提交到緩存區
git commit -m"提交注釋"? ? ? ? 提交到本地倉庫
git push origin master? ? ? ? ? ?提交到遠程倉庫
3.2.1 三板斧之一 git add + 文件名
git add test.py
git add .
提交到緩存區
上面的是只將test.py文件提交到緩存區
下面的是將當前文件夾下所有文件提交到緩存區
3.2.2 三板斧之二? git commit -m"提交注釋"? 提交到本地倉庫
git commit -m "test"
3.2.3 三板斧之三?git push origin master? 提交到遠程倉庫
git push origin master
4.初次創建并使用git倉庫
我在初次使用git倉庫時遇到了很多問題,下面是具體問題和解決方案
首先要創建好遠程gitee倉庫,在創建好遠程gitee倉庫后,我們首先通過git --version檢查Linux下有沒有安裝git,如果沒有安裝,在wsl2(Debian)下通過sudo apt-get install git安裝
?安裝完成后,我們要把wsl2下的文件上傳到遠端git倉庫
?上面提示顯示當前的操作目錄中沒有.git文件,也就是說當前并不是一個Git上的遠程倉庫目錄
解決方案:通過git init初始化即可
初始化之后,我們在通過git add . 將文件提交到緩存區就可以正常執行了
?fatal: No configured push destination. 意思是沒有配置遠端推送目標
所以我們要通過 git remote add origin '遠程倉庫url' 在第一次使用push的時候對遠端路徑進行配置,配置完成后我們在push
上面錯誤顯示 ! [rejected]? master -> master (fetch first)
解決辦法:
將線上、線下代碼進行合并:git pull --rebase origin master? 這里是master分支,還可以是其他分支
然后再進行push即可:git push origin master
至此問題解決,成功將Linux下文件上傳到遠端git倉庫?
5.?git常用命令
常用命令:
1.git log?查看我們的工作日志
2.git status
?
可以看當前狀況和遠端的狀態3.git clone + url? 克隆遠端倉庫內容到本地
4.git checkout -b xxx 切換至新分支xxx(相當于復制了remote的倉庫到本地的xxx分支上)
5.git diff 查看自己對代碼做出的改變
6.git add 上傳更新后的代碼至暫存區
7.git commit 可以將暫存區里更新后的代碼更新到本地git
8.git push origin xxx 將本地的xxxgit分支上傳至github上的git(如果在寫自己的代碼過程中發現遠端GitHub上代碼出現改變)
9.git checkout main 切換回main分支
10.git pull origin master(main) 將遠端修改過的代碼再更新到本地
11.git checkout xxx 回到xxx分支
12.git push -f origin xxx 把rebase后并且更新過的代碼再push到遠端github上(-f 強行)
遠端完成更新后
1.git branch -d xxx 刪除本地的git分支
2.git pull origin master 再把遠端的最新代碼拉至本地