1. 程式人生 > 資訊 >叮咚買菜暴漲,經緯張穎戲稱:或當成滴滴程式碼了

叮咚買菜暴漲,經緯張穎戲稱:或當成滴滴程式碼了

Git工作機制:

工作區->git add->暫存區(不生成版本)->git commit->本地庫(生成版本)->git push->遠端庫(git hub,gitee,gitlab)

本地庫的程式碼版本只有本機看到,一旦push到遠端庫,則所有訪問遠端庫的人都能看到版本

預設安裝後

進入本機的某個資料夾路徑下,右鍵,會有Git GUI here和Git bashhere兩個選單項,分別是Git的圖形介面和命令列介面,命令列介面使用的是linux命令。

隨便進入一個資料夾,右鍵點git bash here後即進入當前目錄。

分支管理:

預設初始化git本地庫後,生成主線分支預設名為master,可以在master分支基礎上生成多個分支,或者任意分支上再生成分支,方便多線任務並行開發,最後merge程式碼到master上,合併所有程式碼。

  程式碼衝突:兩個分支程式碼衝突(同一個檔案兩個分支都修改了),同時合併會conflict

  此時在合併分支階段修改程式碼,手動解決衝突,然後使用git add檔名+git commit -m "xxx",commit後不跟檔名。然後可解決衝突,merge成功

概念:

  head指標,一直指向當前所在的分支。當前分支是master,head就代表master,當前是hotfix分支,head就代表hotfix分支。

  連結遠端庫兩種方式,https和ssh

Git命令簡介:

  設定簽名:

  git config user.name xxx

  git config user.email xxx@xxx

  git config -global user.name xxx

  git config -global user.email xxx@xxx

    注:不帶global引數的是本地庫級別的簽名,帶global引數則是系統級別的簽名,兩者設定一個即可,如果都設定則就近用本地庫級別簽名,如果都不設定則不能提交git

  本地庫常用命令:

  git --version檢視當前git版本,可以用來驗證git安裝成功。

  git init初始化git本地庫,會多.git隱藏資料夾

  git status檢視當前本地庫狀態

  git add filename新增檔案到暫存區此時git開始追蹤此檔案,但是沒有形成歷史版本

  git rm -cache filename 從暫存區刪除檔案

  git commit -m "first commit" fliename提交本地庫 -m是自定義版本資訊

  git reflog檢視log,有版本號版本資訊

  git log檢視詳細log,多了提交人提交日期等。

  git reset -hardversioncode,回到某個版本

  git branch -v檢視分支

  git branch分支名 :建立分支

  git branch -d [分支名]:刪除分支如果分支還沒合併則會有錯誤提示

  git branch -D [分支名]:強刪除分支,忽略未合併提示

  git checkout分支名:切換分支

  git merge分支名:把指定分支合併到當前分支上,所以在執行此命令前,要先把分支切換到目的端分支上。合併分支後會把指定分支改動的內容加到目的端分支上。

  遠端託管中心操作相關命令:

  git remote -v檢視遠端庫別名

  git remote add遠端庫別名遠端庫http連結:給遠端庫建立別名,一旦建立成功,則會產生兩個,給fetch和push都取了別名

  本地庫與遠端庫:

  git push遠端庫名本地庫分支名: 推送本地分支到遠端庫

  git clone遠端庫地址: 從遠端庫克隆島本地庫。clone做三件事:1,拉取程式碼,2初始化本地庫,3建立別名origin

  git pull遠端庫名本地庫分支名:從遠端庫拉取改動,更新到本地庫 ,git pull = git fetch + git merge, git pull -rebase = git fetch+git rebase

  ssh-keygen -t rss -C遠端庫賬號郵箱:三次回車後生成遠端庫sshkey到本地c:\users\本地賬號名\.ssh中pub公鑰,另一個是私鑰,要把公鑰內容新增到遠端庫.-》ssh中

  遠端庫與遠端庫之間:

  fork:另一個遠端庫叉程式碼到自己的遠端庫,類似複製一份

  pullrequest:申請把遠端庫程式碼拉取到另一個遠端庫

  merge:把提交pullrequest的遠端庫merge到遠端庫

xxx.ignore檔案:

  副檔名為.ignore的檔案中內容可以設定被git忽略的檔案,檔案內容,直接寫*.txt、**/foldername等希望忽略的檔案檔名即可。

  建立.ignore後文件放在任意位置均可,需要在.git/config檔案中新增:  

    [core]

    excludesfile="c:/xxx.ignore"新增此引用。

與VS code結合後文件名顏色會有區分:

  紅色檔案代表未被git追蹤

  綠色代表新增到暫存區

  灰色代表忽略檔案

  黑色代表已經提交本地庫

  藍色代表被追蹤過但是被修改了