git方法

1、git安裝

下載地址:https://git-for-windows.github.io

2、配置個人信息(名字與郵箱)

使用Git的第一件事就是設置你的名字和email,這些就是你在提交commit時的簽名

git config --global user.name "Your Name"

git config --global user.email "email@example.com"

**查看是否配置成功,用命名git config -l

3、創建本地倉庫

git init:把當前目錄變成一個git倉庫

以上命令會在當前目錄下創建了一個.git 隱藏目錄,它就是所謂的Git 倉庫。生成倉庫后的目錄就不是普通的文檔目錄了,我們將其稱為工作區,所以工作區中都包含一個git倉庫,而一個git倉庫中又包含一個暫存區和一個版本庫

4、工作區與版本庫概念

Git有三大區 ( 工作區、暫存區、版本庫 )以及 幾個狀態 ( untracked、unstaged、uncommited )

工作區(Working Directory):電腦中的目錄

倉庫:工作區有一個隱藏目錄.git,這個不算工作區,而是Git倉庫。

暫存區(stage area/index):

版本庫 (Repository) :

5、添加文件到版本庫的步驟

1)創建文件

往工作區中添加文件

2)添加到暫存區:git add

把修改存放到一個臨時的存儲區域,Git 稱之為暫存區(索引)。

3)提交到倉庫:git commit -m "備注"

使用git commit 命令可將暫存區的內容提交至版本庫中,這個過程稱為提交,每一次提交都意味著版本在進行一次更新

6、其他命令

1)查看倉庫變更狀態:git status

2)對比文件:git diff

7、版本回退

1)顯示從最近到最遠的提交日志:git log

1>--pretty=oneline(顯示簡要信息id+備注)

2>--graph(圖形顯示版本走向)

3>--abbrev-commit(顯示簡寫的id)

4>一大串類似3628164...882e1e0的是commit id(版本號)

2)當前版本:HEAD

上一個版本:HEAD^

上上個版本:HEAD^^

... ? ? ? ? ? ?依此類推

前100個版本:HEAD~100

3)git reset (--hard、--mixed、--soft)

1>回退到上一個版本

git reset --hard HEAD^

2>回退到指定版本:

git reset --hard [commit id] 版本號沒必要寫全,前幾位就可以了,Git會自動去找。

3>回退指定文件

git reset --hard [commit id]

4>參數:(--hard、--mixed(默認值)、--soft)

--hard:工作區、暫存區、版本庫的文件同時回退

--mixed:暫存區、版本庫的文件回退

--soft:僅僅回退版本庫中的文件

4)查看命令歷史:git reflog

8、撤銷修改

git checkout -- :放棄工作區的修改

git rm --cache :撤銷暫存區的修改

git reset HEAD :撤銷暫存區的修改

9、遠程倉庫

1)創建SSH Key:ssh-keygen -t rsa -C 'xxx@xx.com'

以上命令會在當前window用戶的目錄里創建.ssh目錄,里面有id_rsa(私鑰)和id_rsa.pub(公鑰)兩個文件

2)把私鑰或公鑰添加到遠程倉庫

3)建立本地倉庫與遠程倉庫的連接(先有本地倉庫,后有遠程倉庫的時候,如何關聯遠程倉庫)

git remote add origin 遠程倉庫地址

PS:刪除遠程倉庫連接:git remote remove <遠程倉庫名>

4)從遠程庫克隆(先有遠程庫,后有本地倉庫的時候,如何關聯遠程倉庫)

git clone 遠程倉庫地址

**當你從遠程倉庫克隆時,實際上Git自動把本地的master分支和遠程的master分支對應起來了,并且,遠程倉庫的默認名稱是origin

**測試線路是否連通:ssh -T git@github.com

10、推送到遠程倉庫

git push

格式:git push <遠程主機名> <本地分支名>:<遠程分支名>

**第一次使用git push -u origin master后,之后就可以用簡寫命名:git push origin

11、拉取與合并

1)git pull

格式:git pull <遠程主機名> <遠程分支名>:<本地分支名>

--allow-unrelated-histories

2)git fetch

3)git merge

**push和pull后的分支順序格式:<來源地>:<目的地>

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容