1. 程式人生 > >git日常使用整理

git日常使用整理

註冊使用gitlab新使用者

在gitlab註冊完賬號後,建立專案,會有如下提示

點選add an SSHkey 現實如下:

點選generate it,按照提示計算ssh key

把結果貼上到gitlab新增到ssh key 的位置,如下

 

 回到建立的專案位置,根據頁面提示,配置賬號資訊,拉取程式碼.如下圖

這樣可以正常使用,下面開始瞭解練習。

 

Git的三種重要模式,分別是已提交、已修改和已暫存:

  • 已提交(committed):表示資料檔案已經順利提交到Git資料庫中。
  • 已修改(modified):表示資料檔案已經被修改,但未被儲存到Git資料庫中。
  • 已暫存(staged):表示資料檔案已經被修改,並會在下次提交時提交到Git資料庫中。

      修改檔案,add 加入暫存區,commit 提交到git資料庫,這樣就不怕丟失版本.盜圖一張如下。

 

1.資料提交

 mkdir local

cd  local

#將已存在目錄初始化成git管理工作目錄

git init

編輯檔案

echo "Initialization Git repository" > readme.txt

新增指定檔案到暫緩區

git add readme.txt

git commit -m "描述"

沒修改後要先加入到暫緩區在提交,即  修改1 >git  add > 修改2 > git  add  > commit 或者 git commit  -a

git status 檢視檔案狀態

比較當前檔案和版本庫的差別

git diff readme.txt 

可以用 工作目錄/.gitignore 檔案來排除不需要提交的檔案,這樣就可以用 git add . 來新增目錄下的所有改過的檔案到暫緩區

//忽略所有以.a為字尾的檔案。
*.a
//但是lib.a這個檔案除外,依然會被提交。
!lib.a
//忽略build目錄內的所有檔案。
build/
//忽略build目錄內以txt為字尾的檔案。
build/*.txt
//指定忽略名字為git.c的檔案。
git.c

如果確定檔案修改,可以加 -a 引數跳過add 步驟git commit -a -m "Modified描2.移除檔案

git add . 加入暫緩區
從暫緩區移除指定檔案,工作目錄中並未刪除檔案
git rm --cached 檔名
直接強制刪除工作目錄檔案及快取區檔案
git rm -f 檔名

3.移動改名檔案

把 檔名 a改成 b 檢視狀態會有rename操作
git mv a.txt b.txt
或者 直接把 a.txt 改成 c.txt 然後刪除 a.txt 在新增add c.txt 到暫緩區 提交

3.歷史記錄

顯示出每次提交的歷史記錄
git log
只檢視最近2次歷史
git log -2
-p引數 展示最近一次提交的資料差異
git log -p -1
--pretty引數,根據不同引數展示顯示格式
git log --pretty=oneline

4.還原版本資料

git log --pretty=oneline
看到如下版本
fd3d78a6a0b76df7f5785623ecdb0ad9999f10ab 新版本
d19240ec7eb31a7abf20992416e6a509c84e703a 上版本
778c5bc7b96f2d7494396fd98b89bd5899a315d0 老版本
還原到以前老版本
git reser --hard 版本號
在當前版本下,檢視未來版本記錄
git reflog
在還原到相對當前版本的未來版本
git reser --hard 版本號

checkout 還原某個檔案內容
當我們改動一個檔案很多地方,發現更改錯了,手動刪除太麻煩,可以從暫緩區還原
git checkout -- 檔名
checkou規則是如果暫存區中有該檔案,則直接從暫存區恢復,如果暫存區沒有該檔案,則將還原成最近一次檔案提交時的快照

5.新增標籤

給大版本打標籤
git tag -a "v1.0" -m "標籤描述" 版本號(預設是當前版本)
檢視所有已有標籤
git tag
檢視指定標籤內容
git show v.10(標籤名)
刪除標籤
git tag -d v1.0

6.建立分支

建立分支demo
git branch demo
切換demo分支
git checkout demo
修改檔案
echo "222" >> a.txt
git commit -a -m "分支提交"
檢視分支列表
git branch
切換主分支
git checkout master
合併分支demo
git merge demo
檢視內容確認後,刪除demo分支
git branch -d demo

7.分支衝突解決

2個分支改動同一個檔案
合併時不能快速自動合併,會提示衝突,需要手動解決
git checkout master
git merge demo 報告檔案衝突
vi a.txt 檢視衝突內容
Git用< <<<<<<,=======,>>>>>>>分割開了各個分支衝突的內容,我們需要手工的刪除這些符號,並將內容改正確在提交。
修改衝突提交完成
檢視合併線
git log --graph --pretty=oneline --abbrev-commit
放心刪除分支demo
git branch -d demo

從遠端git服務下載程式碼
git clone [email protected]:username/boot.git
修改完成後提交到遠端
git push origin

參考 https://www.linuxprobe.com/chapter-21.html