git相關操作

2021-08-21 03:59:58 字數 4045 閱讀 2045

一、建立版本庫

$git init

二、遠端倉庫

1、關聯遠端倉庫

2、從遠端倉庫拉取**

3、更新本地倉庫**

$ git fetch

$ git pull

4、把檔案新增到倉庫

$ git add readme.txt

5、把檔案提交到倉庫

$ gitcommit-m

"wrote a readme file"

6、把本地庫的所有內容推送到遠端庫上

$ git push -u origin master

三、建立與合併分支

(1)從master分支建立dev分支並切換到dev分支

$ git checkoutmaster

$gitcheckout -b dev

(1)檢視本地當前分支

$ git branch

分支前面帶「*」表示當前分支,剩下的分支表示本地有的分支。

(2)檢視遠端全部的分支,

$ git branch -a

注意:白色的表示本地有的,紅色的表示本地沒有,僅在遠端存在

(3)分支合併(將dev合併到master)

$git checkout master

$git merge dev

(4)合併完成後,刪除dev分支

$git branch -d dev

注意:刪除dev分支時,注意我們當前所在的分支不能是dev分支)

四、解決衝突

(1)建立分支

$ git checkout -b feature1

switched

to a new branch

'feature1'

(2)修改

readme.txt

最後一行,改為:

creating anewbranch is quickand******.

(3)在

feature1

分支上提交:

$ git add readme.txt

$ gitcommit-m

"and ******"

[feature1

14096

d0]and******

1file changed,

1insertion(+),

1deletion(-)

(4)切換到master分支

$ git checkout master

switched to branch 'master'

your branch is ahead of 'origin/master' by 1commit.

(use

"git push"

topublish yourlocalcommits)

(5)在

master

分支上把

readme.txt

檔案的最後一行改為:

creating anewbranch is quick & ******.

(6)提交

$ git add readme.txt

$ git commit -m

"& ******"

[master

5dc6824] & ******

1file changed,

1insertion(+),

1deletion(-)

注意:現在,

master

分支和feature1

分支各自都分別有新的提交,這種情況下,git無法執行「快速合併」,只能試圖把各自的修改合併起來,但這種合併就可能會有衝突

$ git merge feature1

auto

-merging readme.txt

conflict

(content)

:merge

conflictinreadme.txt

automatic

merge failed; fix conflictsandthencommit the result.

git告訴我們,

readme.txt

檔案存在衝突,必須手動解決衝突後再提交。

git status

也可以告訴我們衝突的檔案

(7)檢視readme.txt中的內容

git is a distributed version control system.

git is free software distributed under the gpl.

git has a mutable index called stage.

git tracks changes of files.

<<<<<<<

head

creating

anew

branch

isquick

& ******.

*****==

creating

anew

branch

isquick

and******.

>

>>>>>> feature1

注意:git用

<<<<<<<

,*****==

,>>>>>>>

標記出不同分支的內容,

(8)我們修改如下後儲存:

creating anewbranch is quickand******.

(9)再提交:

$ git add readme.txt

$ git commit -m

"conflict fixed"

[master cf810e4] conflict fixed

(10)

最後,刪除

feature1

分支:$

git branch -d feature1

deleted

branch feature1 (was

14096d0

).五、版本回退

(1)顯示從最近到最遠的提交日誌

$git log --pretty=oneline

(2)回退到上乙個版本

$ git reset--hard head^

(3)回到指定版本

$ git reset--hard

1094

a(4)顯示每一次命令歷史

$git reflog

六、修改操作

(1)檢視工作區和版本庫裡面最新版本的區別

$git diff head -- readme.txt

(2)丟棄工作區的修改

$ git checkout -- readme.txt

(3)把暫存區的修改撤銷掉

$ git resethead readme.txt

(4)從版本庫中刪除該檔案

$ git rm test.txt

$ gitcommit-m

"remove test.txt"

git 相關操作

merge 比如在上feature 4.2修改,commit push後,切換到dev分支 1 commit push 2 checkout dev 分支。3 git pull origin dev 4 git merge no ff origin feature 4.2 把feature 4.2上...

git相關操作

常用操作 新增賬戶 修改git配置檔案,新增郵箱,以及名稱 vi gitconfig 生成git金鑰 ssh keygen t rsa c 剛新增的郵箱位址 檢視公鑰內容,複製內容,新增至github裡面 cat id rsa.pub轉殖專案 git clone git位址 從github上覆制的專...

Git相關操作

新增關聯遠端倉庫 git remote add origin git github.你的使用者名稱 git推送到遠端倉庫 git push u origin master 在本地倉庫刪除檔案 git rm 我的檔案在本地倉庫刪除資料夾 git rm r 我的資料夾 此處 r表示遞迴所有子目錄,如果你...