3. git命令列操作之遠端庫操作
阿新 • • 發佈:2020-11-28
3.1 基本操作
-
註冊GitHub賬號
-
在本地建立一個本地庫並初始化
-
登入到gitHub建立一個遠端庫
注意:windows的憑據管理器中會儲存github登入資訊。如果要切換登入者,先刪除相應憑據
- 給遠端庫地址起一個別名
3.2 push操作
git push [遠端地址] [分支名]
-
兩個引數
-
-u
git push -u
表示加了引數-u後,以後即可直接用git push
代替git push origin master
-
-f
git push -f
表示將目前自己本機的程式碼庫推送到遠端,並覆蓋
-
注:其實在推送時,儘量避免
git push -f
的操作,或者說git push -f
是一個需要謹慎的操作,它是將本地歷史覆蓋到遠端倉庫的行為。例如b開發者在a進行git push -f前已經進行git pull操作,所以歷史上的commit2是可以查詢到,但是如果沒有任何其他開發者進行pull,a再改變歷史並強制推送,這部分資料就會丟失。當然也並非禁止使用-f,有時,如果程式碼組內review後,確認程式碼正確無誤,保證大家未pull的情況下,強制推送後,可以保持目錄樹清潔。
3.3 clone操作
git clone[遠端地址]
能夠完整的把遠端庫下載到本地
同時會替我們建立origin遠端地址別名
會初始化本地庫
3.4 pull操作
pull操作是fetch操作和merge操作的合併
git fetch [遠端庫地址別名] [遠端分支名] 命令
git merge [遠端庫地址別名 / 遠端分支名] 命令
git pull [遠端庫地址別名] [遠端分支名] 命令
直接執行pull操作(拉取合併二合一)
3.5 邀請合作者
被邀請的人就能執行push操作了,即寫的許可權
3.6 協同開發時衝突的解決
注意:
如果不是基於GitHub遠端庫的最新版本所作的修改,便不能推送,必須先拉取
拉取下來之後如果進入衝突狀態,則按照"分支衝突解決"操作解決即可
如果其他協作者先push了內容
當前人員有push了部分相同內容就會產生衝突
3.7 跨團隊協作操作
3.8 SSH免密登入
win10 OS提供憑據功能,第一次登入後以後就可以免登入。但是其他OS如果沒有憑據功能則每次都需要登入。SSH可以解決這個問題 - 免密登入
① 進入當前使用者的家目錄~
② 刪除之前建立的(如果有).ssh 目錄
③ 執行命令生成.ssh 金鑰目錄
④ 進入.ssh 目錄檢視檔案列表
⑤ 檢視 id_rsa.pub 檔案內容
⑥ 複製 id_rsa.pub 檔案內容,登入 GitHub,點選使用者頭像→Settings→SSHandGPG keys →NewSSHKey→輸入複製的金鑰資訊
⑦ 回到 Gitbash 建立遠端地址別名 ,推送檔案進行測試