git 基礎命令

2022-04-03 15:55:27 字數 3154 閱讀 6006

我們即將學習的內容將包括如下幾個部分(扮演不同角色):

1) basic repository command:每個操縱git的人都需要掌握

2) individual developer (standalone):獨立開發者需要掌握

3) individual developer (participant):合作開發者需要掌握

4) integrator:專案彙總人需要掌握

5) repository administration:倉庫管理員需要掌握

我們都會使用這些命令來完成最基本的工作:

git-init或git-clone來建立git倉庫

git-fsck來檢查倉庫的錯誤

git-gc用來完成一些瑣碎的工作,比如重組或刪減。

git-show-branch:可以顯示你當前所在的分支以及提交記錄。

git-log:顯示提交日誌

git-checkout或者git-branch:用於切換和建立分支

git-add:用於將修改內容加入到index檔案中

git-diff和git-status:用於顯示開發者所做的修改

git-commit:用於提交當前修改到git倉庫。

git-reset和git-checkout:用於撤銷某些修改

git-merge:用於合併兩個分支

git-rebase:用於維護topic分支(此處我也不太懂,等完成git學習後轉過頭來會關注此問題)

git-tag:用於標記標籤。

bogon:aha lakeslove$ git show-branch

![ahaback] 這是ahaback目錄下的檔案

*[master] 解決pull引起的衝突

![test] 新增輸入說明,並重新編譯

--- -[master] 解決pull引起的衝突

+*[ahaback] 這是ahaback目錄下的檔案

* [master^] 刪除程式開始

+* [master~2

] 在test2中編譯

+* [master~3

] 編譯

-- [master~4] merge branch '

test

'+*+ [test] 新增輸入說明,並重新編譯

git checkout — curses/ux_audio_oss.c //用於取消對curses/ux_audio_oss.c檔案的修改

git reset –soft head^ //head回覆到上一次commit的**。–soft選項表示不改動index file和working tree中的內容,

git reset head^ //head和index回覆到上一次commit的**。不改動working tree中的內容

git reset --hard head^ //working tree、index、head 都回覆到上一次commit到**

git-clone:複製別人的git倉庫到本地

git-pull和git-fetch:保持和別人的git倉庫的同步更新

git-push:共享方式。等同於cvs方式下的共享。

git-format-patch:利用郵件形式提交補丁。等同於核心開發方式。

我們總結的將是疑難知識點。

我提煉出來的需要解決的疑難問題包括:

1 commit和commit -a的區別

2 log -p的中-p的作用

3merge的用法及引數用法

4fetch的用法

5pull的用法

6commit資訊詳解

7head的含義及相關用法,orig_head的用法以及其他常量的使用方法

8 tag的用法

log -p的中-p的作用

git log:顯示commit日誌

git log -p:不僅顯示commit日誌,而且同時顯示每次commit的**改變。

merge的用法及引數用法

git-merge主要用於將兩個或兩個以上的開發分支進行合併。

git merge branchname 用於將branchname分支合併到當前分支中。(如果合併發生衝突,需要自己解決衝突)

當merge命令自身無法解決衝突的時候,它會將工作樹置於一種特殊的狀態,並且給使用者提供衝突資訊,以期使用者可

以自己解決這些問題。當然在這個時候,未發生衝突的**已經被git merge登記在了index file裡了。如果你這個時候使

用git diff,顯示出來的只是發生衝突的**資訊。

在你解決了衝突之前,發生衝突的檔案會一直在index file中被標記出來。這個時候,如果你使用git commit提交的話,

在發生衝突的時候,如果你使用git status命令,那麼會顯示出發生衝突的具體資訊。

在你解決了衝突之後,你可以使用如下步驟來提交:

第一步:git add filename.txt

第二步:git commit

如果你希望撤銷乙個分支到merge前的狀態,那麼使用如下命令:

$ git reset –hard head

//–hard表示將working tree和index file都撤銷到以前狀態

在這先偷偷的告訴你,–soft表示只撤銷commit,而保留working tree和index file的資訊,–mixed會撤銷commit和

index file,只保留working tree的資訊。ok,如果你能記住–hard、–mixed和–soft的區別,那最好,如果記不住,也不用

自責啦,以後還會講到。

fetch的用法

命令格式為:git fetch …其中

表示遠端的倉庫路徑。

其中的標準格式應該為:,表示源的分支,如果不為空,則表示本地的分支;如果

為空,則使用當前分支。

bobworks分支中。

5pull的用法

git-pull的作用就是從乙個repository取出內容並合併到另乙個repository中。

git pull是git fetch和git merge命令的乙個組合。

git pull /home/bob/myrepo 這個命令的意思是從此目錄中取出內容並合併到當前分支中。

git pull .就相當於git merge。

GIT 基礎 基礎命令

環境 centos7 yum install git這裡裡有個隱藏的資料夾 git 為git倉庫的配置資料夾,不可隨意修改 cd www git git init ls a git這裡和我們平時使用的git客戶端中設定使用者名稱和郵箱一樣的作用 git config global user.name...

Git 基礎命令

一 建立 git init 初始化乙個git倉庫 git add 把檔案新增到倉庫 git commit 把檔案提交到倉庫 二 顯示 git status 檢視倉庫當前的狀態 git log 檢視提交日誌 git reflog 檢視每次命令的記錄 三 管理 git reset hard head 把...

Git基礎命令

git現在廣泛應用在開發 管理中,想當年svn也是幹過這事,當然現在也還有人用,畢竟還是有情懷的嘛。對於測試,現在用git的還少,相對於檔案管理,svn還是會方便很多。當然,用習慣了git也方便,但是我第一次開始用吧,覺得特麻煩,把基礎命令總結下,免得幾日不用忘記。1.建立專案 不管是gitlab ...