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后的分支順序格式:<來源地>:<目的地>