002-GIT

版本控制简介

集中式版本控制系统(SVN)

版本库是集中存放在中央服务器的,而干活的时候,用的都是自己的电脑,所以要先从中央服务器取得最新的版本,然后开始干活,干完活了,再把自己的活推送给中央服务器。中央服务器就好比是一个图书馆,你要改一本书,必须先从图书馆借出来,然后回到家自己改,改完了,再放回图书馆。集中式版本控制系统最大的毛病就是必须联网才能工作。
c91f7a1db6242caba8dd3d05263fcc98.png

分布式版本控制系统(GIT)

分布式版本控制系统根本没有“中央服务器”,每个人的电脑上都是一个完整的版本库,这样工作的时候就不需要联网了。既然每个人电脑上都有一个完整的版本库,那多个人如何协作呢?比方说你在自己电脑上改了文件A,你的同事也在他的电脑上改了文件A,这时,你们俩之间只需把各自的修改推送给对方,就可以互相看到对方的修改了。

分布式版本控制系统的安全性要高很多,因为每个人电脑里都有完整的版本库,某一个人的电脑坏掉了不要紧,随便从其他人那里复制一个就可以了。

在实际使用分布式版本控制系统的时候,其实很少在两人之间的电脑上推送版本库的修改,因为可能你们俩不在一个局域网内,两台电脑互相访问不了,也可能今天你的同事病了,他的电脑压根没有开机。因此,分布式版本控制系统通常也有一台充当“中央服务器”的电脑(GITHUB或GITLAB),但这个服务器的作用仅仅是用来方便“交换”大家的修改,没有它大家也一样干活,只是交换修改不方便而已。
7fb6d77cc75d1c92645143593286f353.png

初始化本地仓库

版本库又称为仓库,英文名repository,可以简单理解成一个文件夹,这个文件夹里面的所有文件都被Git管理起来,每个文件的修改、删除都能跟踪,以便任何时刻都可以追踪或者在还原。

下载Git,安装完找到Git下Git Bash或右键选择Git Bash Here都可以打开Git命令窗口
切换到要初始化为仓库的文件夹,执行命令

git init

91058a1a25b6aeb49893e67642533150.png
工作区:指初始化的目录
版本库:初始化后工作区下有一个隐藏目录.git,就是Git的版本库。版本库中有暂存区(Index),还有Git自动创建的第一个主分支master,以及指向master的指针HEAD。
9840f0fcc7cc28ec3b810f4d73fc85bf.png

查看

查看仓库状态

git status

查看版本信息(即commit的记录)

git log
查看简要信息
git log --pretty=oneline

查看版本差异

比较工作区与暂存区
git diff
比较暂存区与最新本地版本库
git diff --cached  [...] 
比较工作区与最新本地版本库
git diff HEAD [...]
比较工作区与指定commit-id的差异
git diff commit-id  [...] 
比较暂存区与指定commit-id的差异
git diff --cached [] [...] 
比较两个commit-id之间的差异
git diff [] []

文件操作

添加文件
没有任何显示说明成功,Unix的哲学是“没有消息就是好消息”

提交单个文件
git add TEST.txt
提交所有变化
git add -A  
提交被修改(modified)和被删除(deleted)文件,不包括新文件(new)
git add -u  
提交新文件(new)和被修改(modified)文件,不包括被删除(deleted)文件
git add .  

删除文件

  • git rm来删除文件,同时还会将这个删除操作记录下来;
  • rm来删除文件,仅仅是删除了物理文件,没有将其从git的记录中剔除
删除文件
git rm test.file
git commit -m "delete test.file"
或者
rm test.file
git commit -am "delete test.file"
切换到要删除文件的目录下,批量删除文件
git rm * -r

提交文件

git commit -m 'commit TEST'

撤销修改

正常GIT工作流程为3个步骤:(工作区) -> add(提交暂存区) -> commit(提交本地仓库) -> push(提交远程仓库)
对应产生5中状态:未修改(Origin) 、已修改(Modified) 、已暂存(Staged) 、已提交(Committed) 、已推送(Pushed)

已修改,未暂存

checkout命令是把在工作区的修改撤销,有两种情况:

  1. 修改后还没有被放到暂存区,那就会回退到版本库
  2. 已经添加到暂存区后,那就会回退到暂存区
撤销单个文件修改
git checkout -- TEST.txt
撤销所有文件修改
git checkout .

已暂存,未提交

把最近一次提交的版本替换到暂存区 ,此操作不影响工作区

git reset HEAD .

已提交,未推送(版本回退)

在Git中,用HEAD表示当前版本,上一个版本就是HEAD^,上上一个版本就是HEAD^^,当然往上100个版本可以写成HEAD~100
回退到上一版本(即:把当前分支最近一次提交版本覆盖到工作区,把暂存区的修改全部撤销):

git reset --hard HEAD^

Tips:回退后会看不到之前的版本号,可以用git reflog查看执行过的命令。如下查到回退前commit id为e4c3f5f,这样就可以用来回退到e4c3f5f

git reflog

5ac930c HEAD@{0}: reset: moving to HEAD^
e4c3f5f HEAD@{1}: commit: commit 2 TEST

#回退
git reset --hard e4c3f5f

Tips:Git的版本回退速度非常快,因为Git在内部有个指向当前版本的HEAD指针,当回退版本的时候,Git仅仅是把HEAD指针指向回退的版本

已推送

因为本地仓库和远程仓库是等价的,所以只需要先恢复本地仓库,再强制push到远程仓库即可

git reset --hard HEAD^
git push -u origin master

分支管理

每次提交,Git都把它们串成一条时间线,这条时间线就是一个分支。主分支即master分支。HEAD严格来说不是指向提交,而是指向master,master才是指向提交的,所以,HEAD指向的就是当前分支。
659cb5a539b59dfe8d922d9fa10c7c66.png
当我们创建新的分支,例如dev时,Git新建了一个指针叫dev,指向master相同的提交,再把HEAD指向dev,就表示当前分支在dev上:
43776405ce0fc1d28a06f0f466bc9b29.png
Git创建一个分支很快,因为除了增加一个dev指针,改改HEAD的指向,工作区的文件都没有任何变化
不过,从现在开始,对工作区的修改和提交就是针对dev分支了,比如新提交一次后,dev指针往前移动一步,而master指针不变:
8b2412968818b2de51f32b2d8a7f0084.png
假如我们在dev上的工作完成了,就可以把dev合并到master上。Git怎么合并呢?最简单的方法,就是直接把master指向dev的当前提交,就完成了合并:
1ac1e2230a397818ca0ffe00bd81341c.png
合并完分支后,甚至可以删除dev分支。删除dev分支就是把dev指针给删掉,删掉后,我们就剩下了一条master分支:
dbcac08f816441b507bd9a8ca2026acb.png

分支操作

创建分支:

git branch dev

切换分支:

git checkout dev

查看分支:

查看分支名称
git branch
查看分支树状结构
git log --graph --pretty=oneline --abbrev-commit

合并分支:用于合并指定分支到当前分支

git merge dev

删除分支:

删除分支
git branch -d dev
一个没有被合并过的分支,如果要强行删除,需要使用大写的-D参数
git branch -D test
删除远程分支
git branch origin :dev

简化分支线:
把分叉的提交历史“整理”成一条直线,看上去更直观,缺点是本地的分叉提交会被修改

git rebase

远程仓库

通过SHH验证

添加SSH KEY,不然无法推送数据到GITHUB
先在本地生成SSH key:

ssh-keygen -t rsa -C "XXXXX@QQ.COM"

4fce1d974c5bdabc49d892f4b2265da1.png
用查看生成的KEY信息
352aaa59cb245b073a9be19de022bfd6.png
填写到GITHUB中
6e0469e937b43e9071c1c6bfb00cb374.png
7e504a699345a8c1e52b28faf9aa3523.png
f13b4a5056dc6894051606aab352b4c5.png

新建远程仓库

006676ed2392cf2904168023ba15e2bb.png
0e48bb1f5ac68269b58f1c67aad08d28.png

克隆远程仓库

选择SSH验证,复制链接信息:
de886ed86c23708e595cfe162ed20acf.png
打开Git Bash Here克隆远程仓库

git clone git@github.com:TationGH/testRepo.git

新建分支

输入新建分支名,回车,下面会出现创建分支的选项,点击即可创建分支
d3f2acad852361b9a38ca204dc596f14.png
后续就可以选择到新的分支了
398c4b04501204a05c756e2a8b8038a4.png
如果远程仓库建了dev分支,本地仓库未建此dev分支,可以将远程dev分支拉取到本地

git checkout -b dev origin/dev

如果非上一步操作,而是本地和远程都单独建了dev分支,那就要先把两者先关联起来

git branch --set-upstream-to=origin/dev dev

查看

查看远程仓库库信息:

git remote -v

推送

推送当前分支到远程master分支

git push origin master

拉取

git fetch:
拉取时不会把远程分支版本合并当前分支上,而是将远程分支版本放到一个隐藏的commit,可以通过diff对比两个版本的差异,这样操作更安全,一般执行流程如下

拉取分支
git fetch origin dev
对比差异
git diff origin/dev
合并分支
git merge origin/dev

271aedece4421cd5c3e4f4bff6704fb4.png
git pull:
相当于:git pull = git fetch + git merge
少用git pull,用git fetch和git merge代替它

git pull origin dev

解决冲突

如果不同分支都对同一文件进行修改,合并有可能会提示冲突,大致输出错误信息如下:

Auto-merging README.md
CONFLICT (content): Merge conflict in README.md  #合并发生冲突
Automatic merge failed; fix conflicts and then commit the result.

打开冲突文件可以看到git将冲突内容用符号分割,内容大致如下:

<<<<<<< HEAD
11111
=======
22222
>>>>>>> dev

Git用<<<<<<<,=======,>>>>>>>标记出不同分支两个版本冲突的内容,我们修改保存其中一个版本后,就可以重新提交后合并

存储现场

如果dev分支做了修改已add但不想commit,而此时需要用master开分支ISSUE-1修改BUG后提交,如果在ISSUE-1上修改会影响到工作区。可以把当前工作现场存储下来,工作区恢复到最后一次提交状态,等ISSUE提交完再恢复回来

git stash

查看存储的工作现场:

git stash list

恢复工作现场:

恢复最新的stash,stash内容并不删除,你需要用git stash drop来删除
git stash apply
恢复指定的stash
git stash apply stash@{0} 
恢复的同时把stash内容也删除
git stash pop

标签管理

标签就是跟某个commit绑在一起有意义的名字,标签都只存储在本地,不会自动推送到远程
给commit id(f52c633)打上标签,用-a指定标签名,-m指定说明文字

git tag -a v0.1 -m "version 0.1 released" 1094adb

查看标签

git show

删除标签:

git tag -d v1

推送标签到远程仓库:

#推送某个标签到远程
git push origin v1
#一次性推送全部尚未推送到远程的本地标签
git push origin --tags

删除远程仓库标签:

git tag -d v1
git push origin :refs/tags/v1

忽略文件

使用文本编辑器创建一个.gitignore文件,提交到git,这样.gitignore文件里面写的文件名将被git忽略

# gitignore file:
test.txt
*.exe
%5BTOC%5D%0A%23%20%E7%89%88%E6%9C%AC%E6%8E%A7%E5%88%B6%E7%AE%80%E4%BB%8B%0A%23%23%20%E9%9B%86%E4%B8%AD%E5%BC%8F%E7%89%88%E6%9C%AC%E6%8E%A7%E5%88%B6%E7%B3%BB%E7%BB%9F(SVN)%0A%E7%89%88%E6%9C%AC%E5%BA%93%E6%98%AF%E9%9B%86%E4%B8%AD%E5%AD%98%E6%94%BE%E5%9C%A8%E4%B8%AD%E5%A4%AE%E6%9C%8D%E5%8A%A1%E5%99%A8%E7%9A%84%EF%BC%8C%E8%80%8C%E5%B9%B2%E6%B4%BB%E7%9A%84%E6%97%B6%E5%80%99%EF%BC%8C%E7%94%A8%E7%9A%84%E9%83%BD%E6%98%AF%E8%87%AA%E5%B7%B1%E7%9A%84%E7%94%B5%E8%84%91%EF%BC%8C%E6%89%80%E4%BB%A5%E8%A6%81%E5%85%88%E4%BB%8E%E4%B8%AD%E5%A4%AE%E6%9C%8D%E5%8A%A1%E5%99%A8%E5%8F%96%E5%BE%97%E6%9C%80%E6%96%B0%E7%9A%84%E7%89%88%E6%9C%AC%EF%BC%8C%E7%84%B6%E5%90%8E%E5%BC%80%E5%A7%8B%E5%B9%B2%E6%B4%BB%EF%BC%8C%E5%B9%B2%E5%AE%8C%E6%B4%BB%E4%BA%86%EF%BC%8C%E5%86%8D%E6%8A%8A%E8%87%AA%E5%B7%B1%E7%9A%84%E6%B4%BB%E6%8E%A8%E9%80%81%E7%BB%99%E4%B8%AD%E5%A4%AE%E6%9C%8D%E5%8A%A1%E5%99%A8%E3%80%82%E4%B8%AD%E5%A4%AE%E6%9C%8D%E5%8A%A1%E5%99%A8%E5%B0%B1%E5%A5%BD%E6%AF%94%E6%98%AF%E4%B8%80%E4%B8%AA%E5%9B%BE%E4%B9%A6%E9%A6%86%EF%BC%8C%E4%BD%A0%E8%A6%81%E6%94%B9%E4%B8%80%E6%9C%AC%E4%B9%A6%EF%BC%8C%E5%BF%85%E9%A1%BB%E5%85%88%E4%BB%8E%E5%9B%BE%E4%B9%A6%E9%A6%86%E5%80%9F%E5%87%BA%E6%9D%A5%EF%BC%8C%E7%84%B6%E5%90%8E%E5%9B%9E%E5%88%B0%E5%AE%B6%E8%87%AA%E5%B7%B1%E6%94%B9%EF%BC%8C%E6%94%B9%E5%AE%8C%E4%BA%86%EF%BC%8C%E5%86%8D%E6%94%BE%E5%9B%9E%E5%9B%BE%E4%B9%A6%E9%A6%86%E3%80%82%E9%9B%86%E4%B8%AD%E5%BC%8F%E7%89%88%E6%9C%AC%E6%8E%A7%E5%88%B6%E7%B3%BB%E7%BB%9F%E6%9C%80%E5%A4%A7%E7%9A%84%E6%AF%9B%E7%97%85%E5%B0%B1%E6%98%AF%E5%BF%85%E9%A1%BB%E8%81%94%E7%BD%91%E6%89%8D%E8%83%BD%E5%B7%A5%E4%BD%9C%E3%80%82%0A!%5Bc91f7a1db6242caba8dd3d05263fcc98.png%5D(evernotecid%3A%2F%2FB6387AF4-038A-4E8F-B1A7-ACFE95B120B3%2Fappyinxiangcom%2F15363742%2FENResource%2Fp937)%0A%23%23%20%E5%88%86%E5%B8%83%E5%BC%8F%E7%89%88%E6%9C%AC%E6%8E%A7%E5%88%B6%E7%B3%BB%E7%BB%9F(GIT)%0A%E5%88%86%E5%B8%83%E5%BC%8F%E7%89%88%E6%9C%AC%E6%8E%A7%E5%88%B6%E7%B3%BB%E7%BB%9F%E6%A0%B9%E6%9C%AC%E6%B2%A1%E6%9C%89%E2%80%9C%E4%B8%AD%E5%A4%AE%E6%9C%8D%E5%8A%A1%E5%99%A8%E2%80%9D%EF%BC%8C%E6%AF%8F%E4%B8%AA%E4%BA%BA%E7%9A%84%E7%94%B5%E8%84%91%E4%B8%8A%E9%83%BD%E6%98%AF%E4%B8%80%E4%B8%AA%E5%AE%8C%E6%95%B4%E7%9A%84%E7%89%88%E6%9C%AC%E5%BA%93%EF%BC%8C%E8%BF%99%E6%A0%B7%E5%B7%A5%E4%BD%9C%E7%9A%84%E6%97%B6%E5%80%99%E5%B0%B1%E4%B8%8D%E9%9C%80%E8%A6%81%E8%81%94%E7%BD%91%E4%BA%86%E3%80%82%E6%97%A2%E7%84%B6%E6%AF%8F%E4%B8%AA%E4%BA%BA%E7%94%B5%E8%84%91%E4%B8%8A%E9%83%BD%E6%9C%89%E4%B8%80%E4%B8%AA%E5%AE%8C%E6%95%B4%E7%9A%84%E7%89%88%E6%9C%AC%E5%BA%93%EF%BC%8C%E9%82%A3%E5%A4%9A%E4%B8%AA%E4%BA%BA%E5%A6%82%E4%BD%95%E5%8D%8F%E4%BD%9C%E5%91%A2%EF%BC%9F%E6%AF%94%E6%96%B9%E8%AF%B4%E4%BD%A0%E5%9C%A8%E8%87%AA%E5%B7%B1%E7%94%B5%E8%84%91%E4%B8%8A%E6%94%B9%E4%BA%86%E6%96%87%E4%BB%B6A%EF%BC%8C%E4%BD%A0%E7%9A%84%E5%90%8C%E4%BA%8B%E4%B9%9F%E5%9C%A8%E4%BB%96%E7%9A%84%E7%94%B5%E8%84%91%E4%B8%8A%E6%94%B9%E4%BA%86%E6%96%87%E4%BB%B6A%EF%BC%8C%E8%BF%99%E6%97%B6%EF%BC%8C%E4%BD%A0%E4%BB%AC%E4%BF%A9%E4%B9%8B%E9%97%B4%E5%8F%AA%E9%9C%80%E6%8A%8A%E5%90%84%E8%87%AA%E7%9A%84%E4%BF%AE%E6%94%B9%E6%8E%A8%E9%80%81%E7%BB%99%E5%AF%B9%E6%96%B9%EF%BC%8C%E5%B0%B1%E5%8F%AF%E4%BB%A5%E4%BA%92%E7%9B%B8%E7%9C%8B%E5%88%B0%E5%AF%B9%E6%96%B9%E7%9A%84%E4%BF%AE%E6%94%B9%E4%BA%86%E3%80%82%0A%0A%E5%88%86%E5%B8%83%E5%BC%8F%E7%89%88%E6%9C%AC%E6%8E%A7%E5%88%B6%E7%B3%BB%E7%BB%9F%E7%9A%84%E5%AE%89%E5%85%A8%E6%80%A7%E8%A6%81%E9%AB%98%E5%BE%88%E5%A4%9A%EF%BC%8C%E5%9B%A0%E4%B8%BA%E6%AF%8F%E4%B8%AA%E4%BA%BA%E7%94%B5%E8%84%91%E9%87%8C%E9%83%BD%E6%9C%89%E5%AE%8C%E6%95%B4%E7%9A%84%E7%89%88%E6%9C%AC%E5%BA%93%EF%BC%8C%E6%9F%90%E4%B8%80%E4%B8%AA%E4%BA%BA%E7%9A%84%E7%94%B5%E8%84%91%E5%9D%8F%E6%8E%89%E4%BA%86%E4%B8%8D%E8%A6%81%E7%B4%A7%EF%BC%8C%E9%9A%8F%E4%BE%BF%E4%BB%8E%E5%85%B6%E4%BB%96%E4%BA%BA%E9%82%A3%E9%87%8C%E5%A4%8D%E5%88%B6%E4%B8%80%E4%B8%AA%E5%B0%B1%E5%8F%AF%E4%BB%A5%E4%BA%86%E3%80%82%0A%0A%E5%9C%A8%E5%AE%9E%E9%99%85%E4%BD%BF%E7%94%A8%E5%88%86%E5%B8%83%E5%BC%8F%E7%89%88%E6%9C%AC%E6%8E%A7%E5%88%B6%E7%B3%BB%E7%BB%9F%E7%9A%84%E6%97%B6%E5%80%99%EF%BC%8C%E5%85%B6%E5%AE%9E%E5%BE%88%E5%B0%91%E5%9C%A8%E4%B8%A4%E4%BA%BA%E4%B9%8B%E9%97%B4%E7%9A%84%E7%94%B5%E8%84%91%E4%B8%8A%E6%8E%A8%E9%80%81%E7%89%88%E6%9C%AC%E5%BA%93%E7%9A%84%E4%BF%AE%E6%94%B9%EF%BC%8C%E5%9B%A0%E4%B8%BA%E5%8F%AF%E8%83%BD%E4%BD%A0%E4%BB%AC%E4%BF%A9%E4%B8%8D%E5%9C%A8%E4%B8%80%E4%B8%AA%E5%B1%80%E5%9F%9F%E7%BD%91%E5%86%85%EF%BC%8C%E4%B8%A4%E5%8F%B0%E7%94%B5%E8%84%91%E4%BA%92%E7%9B%B8%E8%AE%BF%E9%97%AE%E4%B8%8D%E4%BA%86%EF%BC%8C%E4%B9%9F%E5%8F%AF%E8%83%BD%E4%BB%8A%E5%A4%A9%E4%BD%A0%E7%9A%84%E5%90%8C%E4%BA%8B%E7%97%85%E4%BA%86%EF%BC%8C%E4%BB%96%E7%9A%84%E7%94%B5%E8%84%91%E5%8E%8B%E6%A0%B9%E6%B2%A1%E6%9C%89%E5%BC%80%E6%9C%BA%E3%80%82%E5%9B%A0%E6%AD%A4%EF%BC%8C%E5%88%86%E5%B8%83%E5%BC%8F%E7%89%88%E6%9C%AC%E6%8E%A7%E5%88%B6%E7%B3%BB%E7%BB%9F%E9%80%9A%E5%B8%B8%E4%B9%9F%E6%9C%89%E4%B8%80%E5%8F%B0%E5%85%85%E5%BD%93%E2%80%9C%E4%B8%AD%E5%A4%AE%E6%9C%8D%E5%8A%A1%E5%99%A8%E2%80%9D%E7%9A%84%E7%94%B5%E8%84%91%EF%BC%88GITHUB%E6%88%96GITLAB%EF%BC%89%EF%BC%8C%E4%BD%86%E8%BF%99%E4%B8%AA%E6%9C%8D%E5%8A%A1%E5%99%A8%E7%9A%84%E4%BD%9C%E7%94%A8%E4%BB%85%E4%BB%85%E6%98%AF%E7%94%A8%E6%9D%A5%E6%96%B9%E4%BE%BF%E2%80%9C%E4%BA%A4%E6%8D%A2%E2%80%9D%E5%A4%A7%E5%AE%B6%E7%9A%84%E4%BF%AE%E6%94%B9%EF%BC%8C%E6%B2%A1%E6%9C%89%E5%AE%83%E5%A4%A7%E5%AE%B6%E4%B9%9F%E4%B8%80%E6%A0%B7%E5%B9%B2%E6%B4%BB%EF%BC%8C%E5%8F%AA%E6%98%AF%E4%BA%A4%E6%8D%A2%E4%BF%AE%E6%94%B9%E4%B8%8D%E6%96%B9%E4%BE%BF%E8%80%8C%E5%B7%B2%E3%80%82%0A!%5B7fb6d77cc75d1c92645143593286f353.png%5D(evernotecid%3A%2F%2FB6387AF4-038A-4E8F-B1A7-ACFE95B120B3%2Fappyinxiangcom%2F15363742%2FENResource%2Fp938)%0A%23%20%E5%88%9D%E5%A7%8B%E5%8C%96%E6%9C%AC%E5%9C%B0%E4%BB%93%E5%BA%93%0A%3E%E7%89%88%E6%9C%AC%E5%BA%93%E5%8F%88%E7%A7%B0%E4%B8%BA%E4%BB%93%E5%BA%93%EF%BC%8C%E8%8B%B1%E6%96%87%E5%90%8Drepository%EF%BC%8C%E5%8F%AF%E4%BB%A5%E7%AE%80%E5%8D%95%E7%90%86%E8%A7%A3%E6%88%90%E4%B8%80%E4%B8%AA%E6%96%87%E4%BB%B6%E5%A4%B9%EF%BC%8C%E8%BF%99%E4%B8%AA%E6%96%87%E4%BB%B6%E5%A4%B9%E9%87%8C%E9%9D%A2%E7%9A%84%E6%89%80%E6%9C%89%E6%96%87%E4%BB%B6%E9%83%BD%E8%A2%ABGit%E7%AE%A1%E7%90%86%E8%B5%B7%E6%9D%A5%EF%BC%8C%E6%AF%8F%E4%B8%AA%E6%96%87%E4%BB%B6%E7%9A%84%E4%BF%AE%E6%94%B9%E3%80%81%E5%88%A0%E9%99%A4%E9%83%BD%E8%83%BD%E8%B7%9F%E8%B8%AA%EF%BC%8C%E4%BB%A5%E4%BE%BF%E4%BB%BB%E4%BD%95%E6%97%B6%E5%88%BB%E9%83%BD%E5%8F%AF%E4%BB%A5%E8%BF%BD%E8%B8%AA%E6%88%96%E8%80%85%E5%9C%A8%E8%BF%98%E5%8E%9F%E3%80%82%0A%0A%E4%B8%8B%E8%BD%BD%5BGit%5D(https%3A%2F%2Fgit-scm.com%2F)%EF%BC%8C%E5%AE%89%E8%A3%85%E5%AE%8C%E6%89%BE%E5%88%B0Git%E4%B8%8BGit%20Bash%E6%88%96%E5%8F%B3%E9%94%AE%E9%80%89%E6%8B%A9Git%20Bash%20Here%E9%83%BD%E5%8F%AF%E4%BB%A5%E6%89%93%E5%BC%80Git%E5%91%BD%E4%BB%A4%E7%AA%97%E5%8F%A3%0A%E5%88%87%E6%8D%A2%E5%88%B0%E8%A6%81%E5%88%9D%E5%A7%8B%E5%8C%96%E4%B8%BA%E4%BB%93%E5%BA%93%E7%9A%84%E6%96%87%E4%BB%B6%E5%A4%B9%EF%BC%8C%E6%89%A7%E8%A1%8C%E5%91%BD%E4%BB%A4%0A%60%60%60%0Agit%20init%0A%60%60%60%0A!%5B91058a1a25b6aeb49893e67642533150.png%5D(evernotecid%3A%2F%2FB6387AF4-038A-4E8F-B1A7-ACFE95B120B3%2Fappyinxiangcom%2F15363742%2FENResource%2Fp962)%0A%E5%B7%A5%E4%BD%9C%E5%8C%BA%EF%BC%9A%E6%8C%87%E5%88%9D%E5%A7%8B%E5%8C%96%E7%9A%84%E7%9B%AE%E5%BD%95%0A%E7%89%88%E6%9C%AC%E5%BA%93%EF%BC%9A%E5%88%9D%E5%A7%8B%E5%8C%96%E5%90%8E%E5%B7%A5%E4%BD%9C%E5%8C%BA%E4%B8%8B%E6%9C%89%E4%B8%80%E4%B8%AA%E9%9A%90%E8%97%8F%E7%9B%AE%E5%BD%95.git%EF%BC%8C%E5%B0%B1%E6%98%AFGit%E7%9A%84%E7%89%88%E6%9C%AC%E5%BA%93%E3%80%82%E7%89%88%E6%9C%AC%E5%BA%93%E4%B8%AD%E6%9C%89%E6%9A%82%E5%AD%98%E5%8C%BA%EF%BC%88Index%EF%BC%89%EF%BC%8C%E8%BF%98%E6%9C%89Git%E8%87%AA%E5%8A%A8%E5%88%9B%E5%BB%BA%E7%9A%84%E7%AC%AC%E4%B8%80%E4%B8%AA%E4%B8%BB%E5%88%86%E6%94%AFmaster%EF%BC%8C%E4%BB%A5%E5%8F%8A%E6%8C%87%E5%90%91master%E7%9A%84%E6%8C%87%E9%92%88HEAD%E3%80%82%0A!%5B9840f0fcc7cc28ec3b810f4d73fc85bf.png%5D(evernotecid%3A%2F%2FB6387AF4-038A-4E8F-B1A7-ACFE95B120B3%2Fappyinxiangcom%2F15363742%2FENResource%2Fp940)%0A%23%20%E6%9F%A5%E7%9C%8B%0A%E6%9F%A5%E7%9C%8B%E4%BB%93%E5%BA%93%E7%8A%B6%E6%80%81%0A%60%60%60%0Agit%20status%0A%60%60%60%0A%E6%9F%A5%E7%9C%8B%E7%89%88%E6%9C%AC%E4%BF%A1%E6%81%AF%EF%BC%88%E5%8D%B3commit%E7%9A%84%E8%AE%B0%E5%BD%95%EF%BC%89%0A%60%60%60%0Agit%20log%0A%E6%9F%A5%E7%9C%8B%E7%AE%80%E8%A6%81%E4%BF%A1%E6%81%AF%0Agit%20log%20--pretty%3Doneline%0A%60%60%60%0A%E6%9F%A5%E7%9C%8B%E7%89%88%E6%9C%AC%E5%B7%AE%E5%BC%82%0A%60%60%60%0A%E6%AF%94%E8%BE%83%E5%B7%A5%E4%BD%9C%E5%8C%BA%E4%B8%8E%E6%9A%82%E5%AD%98%E5%8C%BA%0Agit%20diff%0A%E6%AF%94%E8%BE%83%E6%9A%82%E5%AD%98%E5%8C%BA%E4%B8%8E%E6%9C%80%E6%96%B0%E6%9C%AC%E5%9C%B0%E7%89%88%E6%9C%AC%E5%BA%93%0Agit%20diff%20--cached%20%20%5B%3Cpath%3E...%5D%20%0A%E6%AF%94%E8%BE%83%E5%B7%A5%E4%BD%9C%E5%8C%BA%E4%B8%8E%E6%9C%80%E6%96%B0%E6%9C%AC%E5%9C%B0%E7%89%88%E6%9C%AC%E5%BA%93%0Agit%20diff%20HEAD%20%5B%3Cpath%3E...%5D%0A%E6%AF%94%E8%BE%83%E5%B7%A5%E4%BD%9C%E5%8C%BA%E4%B8%8E%E6%8C%87%E5%AE%9Acommit-id%E7%9A%84%E5%B7%AE%E5%BC%82%0Agit%20diff%20commit-id%20%20%5B%3Cpath%3E...%5D%20%0A%E6%AF%94%E8%BE%83%E6%9A%82%E5%AD%98%E5%8C%BA%E4%B8%8E%E6%8C%87%E5%AE%9Acommit-id%E7%9A%84%E5%B7%AE%E5%BC%82%0Agit%20diff%20--cached%20%5B%3Ccommit-id%3E%5D%20%5B%3Cpath%3E...%5D%20%0A%E6%AF%94%E8%BE%83%E4%B8%A4%E4%B8%AAcommit-id%E4%B9%8B%E9%97%B4%E7%9A%84%E5%B7%AE%E5%BC%82%0Agit%20diff%20%5B%3Ccommit-id%3E%5D%20%5B%3Ccommit-id%3E%5D%0A%60%60%60%0A%23%20%E6%96%87%E4%BB%B6%E6%93%8D%E4%BD%9C%0A%E6%B7%BB%E5%8A%A0%E6%96%87%E4%BB%B6%0A%E6%B2%A1%E6%9C%89%E4%BB%BB%E4%BD%95%E6%98%BE%E7%A4%BA%E8%AF%B4%E6%98%8E%E6%88%90%E5%8A%9F%EF%BC%8CUnix%E7%9A%84%E5%93%B2%E5%AD%A6%E6%98%AF%E2%80%9C%E6%B2%A1%E6%9C%89%E6%B6%88%E6%81%AF%E5%B0%B1%E6%98%AF%E5%A5%BD%E6%B6%88%E6%81%AF%E2%80%9D%0A%60%60%60%0A%E6%8F%90%E4%BA%A4%E5%8D%95%E4%B8%AA%E6%96%87%E4%BB%B6%0Agit%20add%20TEST.txt%0A%E6%8F%90%E4%BA%A4%E6%89%80%E6%9C%89%E5%8F%98%E5%8C%96%0Agit%20add%20-A%20%20%0A%E6%8F%90%E4%BA%A4%E8%A2%AB%E4%BF%AE%E6%94%B9(modified)%E5%92%8C%E8%A2%AB%E5%88%A0%E9%99%A4(deleted)%E6%96%87%E4%BB%B6%EF%BC%8C%E4%B8%8D%E5%8C%85%E6%8B%AC%E6%96%B0%E6%96%87%E4%BB%B6(new)%0Agit%20add%20-u%20%20%0A%E6%8F%90%E4%BA%A4%E6%96%B0%E6%96%87%E4%BB%B6(new)%E5%92%8C%E8%A2%AB%E4%BF%AE%E6%94%B9(modified)%E6%96%87%E4%BB%B6%EF%BC%8C%E4%B8%8D%E5%8C%85%E6%8B%AC%E8%A2%AB%E5%88%A0%E9%99%A4(deleted)%E6%96%87%E4%BB%B6%0Agit%20add%20.%20%20%0A%60%60%60%0A%E5%88%A0%E9%99%A4%E6%96%87%E4%BB%B6%0A%0A*%20%E7%94%A8%60git%20rm%60%E6%9D%A5%E5%88%A0%E9%99%A4%E6%96%87%E4%BB%B6%EF%BC%8C%E5%90%8C%E6%97%B6%E8%BF%98%E4%BC%9A%E5%B0%86%E8%BF%99%E4%B8%AA%E5%88%A0%E9%99%A4%E6%93%8D%E4%BD%9C%E8%AE%B0%E5%BD%95%E4%B8%8B%E6%9D%A5%EF%BC%9B%0A*%20%E7%94%A8%60rm%60%E6%9D%A5%E5%88%A0%E9%99%A4%E6%96%87%E4%BB%B6%EF%BC%8C%E4%BB%85%E4%BB%85%E6%98%AF%E5%88%A0%E9%99%A4%E4%BA%86%E7%89%A9%E7%90%86%E6%96%87%E4%BB%B6%EF%BC%8C%E6%B2%A1%E6%9C%89%E5%B0%86%E5%85%B6%E4%BB%8Egit%E7%9A%84%E8%AE%B0%E5%BD%95%E4%B8%AD%E5%89%94%E9%99%A4%0A%0A%60%60%60%0A%E5%88%A0%E9%99%A4%E6%96%87%E4%BB%B6%0Agit%20rm%20test.file%0Agit%20commit%20-m%20%22delete%20test.file%22%0A%E6%88%96%E8%80%85%0Arm%20test.file%0Agit%20commit%20-am%20%22delete%20test.file%22%0A%E5%88%87%E6%8D%A2%E5%88%B0%E8%A6%81%E5%88%A0%E9%99%A4%E6%96%87%E4%BB%B6%E7%9A%84%E7%9B%AE%E5%BD%95%E4%B8%8B%EF%BC%8C%E6%89%B9%E9%87%8F%E5%88%A0%E9%99%A4%E6%96%87%E4%BB%B6%0Agit%20rm%20*%20-r%0A%60%60%60%0A%E6%8F%90%E4%BA%A4%E6%96%87%E4%BB%B6%0A%60%60%60%0Agit%20commit%20-m%20'commit%20TEST'%0A%60%60%60%0A%23%20%E6%92%A4%E9%94%80%E4%BF%AE%E6%94%B9%0A%E6%AD%A3%E5%B8%B8GIT%E5%B7%A5%E4%BD%9C%E6%B5%81%E7%A8%8B%E4%B8%BA3%E4%B8%AA%E6%AD%A5%E9%AA%A4%EF%BC%9A(%E5%B7%A5%E4%BD%9C%E5%8C%BA)%20-%3E%20add(%E6%8F%90%E4%BA%A4%E6%9A%82%E5%AD%98%E5%8C%BA)%20-%3E%20commit(%E6%8F%90%E4%BA%A4%E6%9C%AC%E5%9C%B0%E4%BB%93%E5%BA%93)%20-%3E%20push(%E6%8F%90%E4%BA%A4%E8%BF%9C%E7%A8%8B%E4%BB%93%E5%BA%93)%0A%E5%AF%B9%E5%BA%94%E4%BA%A7%E7%94%9F5%E4%B8%AD%E7%8A%B6%E6%80%81%EF%BC%9A%E6%9C%AA%E4%BF%AE%E6%94%B9(Origin)%20%E3%80%81%E5%B7%B2%E4%BF%AE%E6%94%B9(Modified)%20%E3%80%81%E5%B7%B2%E6%9A%82%E5%AD%98(Staged)%20%E3%80%81%E5%B7%B2%E6%8F%90%E4%BA%A4(Committed)%20%E3%80%81%E5%B7%B2%E6%8E%A8%E9%80%81(Pushed)%0A%23%23%20%E5%B7%B2%E4%BF%AE%E6%94%B9%EF%BC%8C%E6%9C%AA%E6%9A%82%E5%AD%98%20%0Acheckout%E5%91%BD%E4%BB%A4%E6%98%AF%E6%8A%8A%E5%9C%A8%E5%B7%A5%E4%BD%9C%E5%8C%BA%E7%9A%84%E4%BF%AE%E6%94%B9%E6%92%A4%E9%94%80%EF%BC%8C%E6%9C%89%E4%B8%A4%E7%A7%8D%E6%83%85%E5%86%B5%EF%BC%9A%0A%0A1.%20%E4%BF%AE%E6%94%B9%E5%90%8E%E8%BF%98%E6%B2%A1%E6%9C%89%E8%A2%AB%E6%94%BE%E5%88%B0%E6%9A%82%E5%AD%98%E5%8C%BA%EF%BC%8C%E9%82%A3%E5%B0%B1%E4%BC%9A%E5%9B%9E%E9%80%80%E5%88%B0%E7%89%88%E6%9C%AC%E5%BA%93%0A2.%20%E5%B7%B2%E7%BB%8F%E6%B7%BB%E5%8A%A0%E5%88%B0%E6%9A%82%E5%AD%98%E5%8C%BA%E5%90%8E%EF%BC%8C%E9%82%A3%E5%B0%B1%E4%BC%9A%E5%9B%9E%E9%80%80%E5%88%B0%E6%9A%82%E5%AD%98%E5%8C%BA%0A%0A%60%60%60%0A%E6%92%A4%E9%94%80%E5%8D%95%E4%B8%AA%E6%96%87%E4%BB%B6%E4%BF%AE%E6%94%B9%0Agit%20checkout%20--%20TEST.txt%0A%E6%92%A4%E9%94%80%E6%89%80%E6%9C%89%E6%96%87%E4%BB%B6%E4%BF%AE%E6%94%B9%0Agit%20checkout%20.%0A%60%60%60%0A%23%23%20%E5%B7%B2%E6%9A%82%E5%AD%98%EF%BC%8C%E6%9C%AA%E6%8F%90%E4%BA%A4%0A%E6%8A%8A%E6%9C%80%E8%BF%91%E4%B8%80%E6%AC%A1%E6%8F%90%E4%BA%A4%E7%9A%84%E7%89%88%E6%9C%AC%E6%9B%BF%E6%8D%A2%E5%88%B0%E6%9A%82%E5%AD%98%E5%8C%BA%20%EF%BC%8C%E6%AD%A4%E6%93%8D%E4%BD%9C%E4%B8%8D%E5%BD%B1%E5%93%8D%E5%B7%A5%E4%BD%9C%E5%8C%BA%0A%60%60%60%0Agit%20reset%20HEAD%20.%0A%60%60%60%0A%23%23%20%E5%B7%B2%E6%8F%90%E4%BA%A4%EF%BC%8C%E6%9C%AA%E6%8E%A8%E9%80%81(%E7%89%88%E6%9C%AC%E5%9B%9E%E9%80%80)%0A%E5%9C%A8Git%E4%B8%AD%EF%BC%8C%E7%94%A8HEAD%E8%A1%A8%E7%A4%BA%E5%BD%93%E5%89%8D%E7%89%88%E6%9C%AC%EF%BC%8C%E4%B8%8A%E4%B8%80%E4%B8%AA%E7%89%88%E6%9C%AC%E5%B0%B1%E6%98%AFHEAD%5E%EF%BC%8C%E4%B8%8A%E4%B8%8A%E4%B8%80%E4%B8%AA%E7%89%88%E6%9C%AC%E5%B0%B1%E6%98%AFHEAD%5E%5E%EF%BC%8C%E5%BD%93%E7%84%B6%E5%BE%80%E4%B8%8A100%E4%B8%AA%E7%89%88%E6%9C%AC%E5%8F%AF%E4%BB%A5%E5%86%99%E6%88%90HEAD~100%0A%E5%9B%9E%E9%80%80%E5%88%B0%E4%B8%8A%E4%B8%80%E7%89%88%E6%9C%AC%EF%BC%88%E5%8D%B3%EF%BC%9A%E6%8A%8A%E5%BD%93%E5%89%8D%E5%88%86%E6%94%AF%E6%9C%80%E8%BF%91%E4%B8%80%E6%AC%A1%E6%8F%90%E4%BA%A4%E7%89%88%E6%9C%AC%E8%A6%86%E7%9B%96%E5%88%B0%E5%B7%A5%E4%BD%9C%E5%8C%BA%EF%BC%8C%E6%8A%8A%E6%9A%82%E5%AD%98%E5%8C%BA%E7%9A%84%E4%BF%AE%E6%94%B9%E5%85%A8%E9%83%A8%E6%92%A4%E9%94%80%EF%BC%89%EF%BC%9A%0A%60%60%60%0Agit%20reset%20--hard%20HEAD%5E%0A%60%60%60%0ATips%EF%BC%9A%E5%9B%9E%E9%80%80%E5%90%8E%E4%BC%9A%E7%9C%8B%E4%B8%8D%E5%88%B0%E4%B9%8B%E5%89%8D%E7%9A%84%E7%89%88%E6%9C%AC%E5%8F%B7%EF%BC%8C%E5%8F%AF%E4%BB%A5%E7%94%A8git%20reflog%E6%9F%A5%E7%9C%8B%E6%89%A7%E8%A1%8C%E8%BF%87%E7%9A%84%E5%91%BD%E4%BB%A4%E3%80%82%E5%A6%82%E4%B8%8B%E6%9F%A5%E5%88%B0%E5%9B%9E%E9%80%80%E5%89%8Dcommit%20id%E4%B8%BAe4c3f5f%EF%BC%8C%E8%BF%99%E6%A0%B7%E5%B0%B1%E5%8F%AF%E4%BB%A5%E7%94%A8%E6%9D%A5%E5%9B%9E%E9%80%80%E5%88%B0e4c3f5f%0A%60%60%60%0Agit%20reflog%0A%0A5ac930c%20HEAD%40%7B0%7D%3A%20reset%3A%20moving%20to%20HEAD%5E%0Ae4c3f5f%20HEAD%40%7B1%7D%3A%20commit%3A%20commit%202%20TEST%0A%0A%23%E5%9B%9E%E9%80%80%0Agit%20reset%20--hard%20e4c3f5f%0A%60%60%60%0ATips%EF%BC%9AGit%E7%9A%84%E7%89%88%E6%9C%AC%E5%9B%9E%E9%80%80%E9%80%9F%E5%BA%A6%E9%9D%9E%E5%B8%B8%E5%BF%AB%EF%BC%8C%E5%9B%A0%E4%B8%BAGit%E5%9C%A8%E5%86%85%E9%83%A8%E6%9C%89%E4%B8%AA%E6%8C%87%E5%90%91%E5%BD%93%E5%89%8D%E7%89%88%E6%9C%AC%E7%9A%84HEAD%E6%8C%87%E9%92%88%EF%BC%8C%E5%BD%93%E5%9B%9E%E9%80%80%E7%89%88%E6%9C%AC%E7%9A%84%E6%97%B6%E5%80%99%EF%BC%8CGit%E4%BB%85%E4%BB%85%E6%98%AF%E6%8A%8AHEAD%E6%8C%87%E9%92%88%E6%8C%87%E5%90%91%E5%9B%9E%E9%80%80%E7%9A%84%E7%89%88%E6%9C%AC%0A%23%23%20%E5%B7%B2%E6%8E%A8%E9%80%81%0A%E5%9B%A0%E4%B8%BA%E6%9C%AC%E5%9C%B0%E4%BB%93%E5%BA%93%E5%92%8C%E8%BF%9C%E7%A8%8B%E4%BB%93%E5%BA%93%E6%98%AF%E7%AD%89%E4%BB%B7%E7%9A%84%EF%BC%8C%E6%89%80%E4%BB%A5%E5%8F%AA%E9%9C%80%E8%A6%81%E5%85%88%E6%81%A2%E5%A4%8D%E6%9C%AC%E5%9C%B0%E4%BB%93%E5%BA%93%EF%BC%8C%E5%86%8D%E5%BC%BA%E5%88%B6push%E5%88%B0%E8%BF%9C%E7%A8%8B%E4%BB%93%E5%BA%93%E5%8D%B3%E5%8F%AF%0A%60%60%60%0Agit%20reset%20--hard%20HEAD%5E%0Agit%20push%20-u%20origin%20master%0A%60%60%60%0A%23%20%E5%88%86%E6%94%AF%E7%AE%A1%E7%90%86%0A%E6%AF%8F%E6%AC%A1%E6%8F%90%E4%BA%A4%EF%BC%8CGit%E9%83%BD%E6%8A%8A%E5%AE%83%E4%BB%AC%E4%B8%B2%E6%88%90%E4%B8%80%E6%9D%A1%E6%97%B6%E9%97%B4%E7%BA%BF%EF%BC%8C%E8%BF%99%E6%9D%A1%E6%97%B6%E9%97%B4%E7%BA%BF%E5%B0%B1%E6%98%AF%E4%B8%80%E4%B8%AA%E5%88%86%E6%94%AF%E3%80%82%E4%B8%BB%E5%88%86%E6%94%AF%E5%8D%B3master%E5%88%86%E6%94%AF%E3%80%82HEAD%E4%B8%A5%E6%A0%BC%E6%9D%A5%E8%AF%B4%E4%B8%8D%E6%98%AF%E6%8C%87%E5%90%91%E6%8F%90%E4%BA%A4%EF%BC%8C%E8%80%8C%E6%98%AF%E6%8C%87%E5%90%91master%EF%BC%8Cmaster%E6%89%8D%E6%98%AF%E6%8C%87%E5%90%91%E6%8F%90%E4%BA%A4%E7%9A%84%EF%BC%8C%E6%89%80%E4%BB%A5%EF%BC%8CHEAD%E6%8C%87%E5%90%91%E7%9A%84%E5%B0%B1%E6%98%AF%E5%BD%93%E5%89%8D%E5%88%86%E6%94%AF%E3%80%82%0A!%5B659cb5a539b59dfe8d922d9fa10c7c66.png%5D(evernotecid%3A%2F%2FB6387AF4-038A-4E8F-B1A7-ACFE95B120B3%2Fappyinxiangcom%2F15363742%2FENResource%2Fp942)%0A%E5%BD%93%E6%88%91%E4%BB%AC%E5%88%9B%E5%BB%BA%E6%96%B0%E7%9A%84%E5%88%86%E6%94%AF%EF%BC%8C%E4%BE%8B%E5%A6%82dev%E6%97%B6%EF%BC%8CGit%E6%96%B0%E5%BB%BA%E4%BA%86%E4%B8%80%E4%B8%AA%E6%8C%87%E9%92%88%E5%8F%ABdev%EF%BC%8C%E6%8C%87%E5%90%91master%E7%9B%B8%E5%90%8C%E7%9A%84%E6%8F%90%E4%BA%A4%EF%BC%8C%E5%86%8D%E6%8A%8AHEAD%E6%8C%87%E5%90%91dev%EF%BC%8C%E5%B0%B1%E8%A1%A8%E7%A4%BA%E5%BD%93%E5%89%8D%E5%88%86%E6%94%AF%E5%9C%A8dev%E4%B8%8A%EF%BC%9A%0A!%5B43776405ce0fc1d28a06f0f466bc9b29.png%5D(evernotecid%3A%2F%2FB6387AF4-038A-4E8F-B1A7-ACFE95B120B3%2Fappyinxiangcom%2F15363742%2FENResource%2Fp943)%0AGit%E5%88%9B%E5%BB%BA%E4%B8%80%E4%B8%AA%E5%88%86%E6%94%AF%E5%BE%88%E5%BF%AB%EF%BC%8C%E5%9B%A0%E4%B8%BA%E9%99%A4%E4%BA%86%E5%A2%9E%E5%8A%A0%E4%B8%80%E4%B8%AAdev%E6%8C%87%E9%92%88%EF%BC%8C%E6%94%B9%E6%94%B9HEAD%E7%9A%84%E6%8C%87%E5%90%91%EF%BC%8C%E5%B7%A5%E4%BD%9C%E5%8C%BA%E7%9A%84%E6%96%87%E4%BB%B6%E9%83%BD%E6%B2%A1%E6%9C%89%E4%BB%BB%E4%BD%95%E5%8F%98%E5%8C%96%0A%E4%B8%8D%E8%BF%87%EF%BC%8C%E4%BB%8E%E7%8E%B0%E5%9C%A8%E5%BC%80%E5%A7%8B%EF%BC%8C%E5%AF%B9%E5%B7%A5%E4%BD%9C%E5%8C%BA%E7%9A%84%E4%BF%AE%E6%94%B9%E5%92%8C%E6%8F%90%E4%BA%A4%E5%B0%B1%E6%98%AF%E9%92%88%E5%AF%B9dev%E5%88%86%E6%94%AF%E4%BA%86%EF%BC%8C%E6%AF%94%E5%A6%82%E6%96%B0%E6%8F%90%E4%BA%A4%E4%B8%80%E6%AC%A1%E5%90%8E%EF%BC%8Cdev%E6%8C%87%E9%92%88%E5%BE%80%E5%89%8D%E7%A7%BB%E5%8A%A8%E4%B8%80%E6%AD%A5%EF%BC%8C%E8%80%8Cmaster%E6%8C%87%E9%92%88%E4%B8%8D%E5%8F%98%EF%BC%9A%0A!%5B8b2412968818b2de51f32b2d8a7f0084.png%5D(evernotecid%3A%2F%2FB6387AF4-038A-4E8F-B1A7-ACFE95B120B3%2Fappyinxiangcom%2F15363742%2FENResource%2Fp944)%0A%E5%81%87%E5%A6%82%E6%88%91%E4%BB%AC%E5%9C%A8dev%E4%B8%8A%E7%9A%84%E5%B7%A5%E4%BD%9C%E5%AE%8C%E6%88%90%E4%BA%86%EF%BC%8C%E5%B0%B1%E5%8F%AF%E4%BB%A5%E6%8A%8Adev%E5%90%88%E5%B9%B6%E5%88%B0master%E4%B8%8A%E3%80%82Git%E6%80%8E%E4%B9%88%E5%90%88%E5%B9%B6%E5%91%A2%EF%BC%9F%E6%9C%80%E7%AE%80%E5%8D%95%E7%9A%84%E6%96%B9%E6%B3%95%EF%BC%8C%E5%B0%B1%E6%98%AF%E7%9B%B4%E6%8E%A5%E6%8A%8Amaster%E6%8C%87%E5%90%91dev%E7%9A%84%E5%BD%93%E5%89%8D%E6%8F%90%E4%BA%A4%EF%BC%8C%E5%B0%B1%E5%AE%8C%E6%88%90%E4%BA%86%E5%90%88%E5%B9%B6%EF%BC%9A%0A!%5B1ac1e2230a397818ca0ffe00bd81341c.png%5D(evernotecid%3A%2F%2FB6387AF4-038A-4E8F-B1A7-ACFE95B120B3%2Fappyinxiangcom%2F15363742%2FENResource%2Fp945)%0A%E5%90%88%E5%B9%B6%E5%AE%8C%E5%88%86%E6%94%AF%E5%90%8E%EF%BC%8C%E7%94%9A%E8%87%B3%E5%8F%AF%E4%BB%A5%E5%88%A0%E9%99%A4dev%E5%88%86%E6%94%AF%E3%80%82%E5%88%A0%E9%99%A4dev%E5%88%86%E6%94%AF%E5%B0%B1%E6%98%AF%E6%8A%8Adev%E6%8C%87%E9%92%88%E7%BB%99%E5%88%A0%E6%8E%89%EF%BC%8C%E5%88%A0%E6%8E%89%E5%90%8E%EF%BC%8C%E6%88%91%E4%BB%AC%E5%B0%B1%E5%89%A9%E4%B8%8B%E4%BA%86%E4%B8%80%E6%9D%A1master%E5%88%86%E6%94%AF%EF%BC%9A%0A!%5Bdbcac08f816441b507bd9a8ca2026acb.png%5D(evernotecid%3A%2F%2FB6387AF4-038A-4E8F-B1A7-ACFE95B120B3%2Fappyinxiangcom%2F15363742%2FENResource%2Fp946)%0A%23%23%20%E5%88%86%E6%94%AF%E6%93%8D%E4%BD%9C%0A%E5%88%9B%E5%BB%BA%E5%88%86%E6%94%AF%EF%BC%9A%0A%60%60%60%0Agit%20branch%20dev%0A%60%60%60%0A%E5%88%87%E6%8D%A2%E5%88%86%E6%94%AF%EF%BC%9A%0A%60%60%60%0Agit%20checkout%20dev%0A%60%60%60%0A%E6%9F%A5%E7%9C%8B%E5%88%86%E6%94%AF%EF%BC%9A%0A%60%60%60%0A%E6%9F%A5%E7%9C%8B%E5%88%86%E6%94%AF%E5%90%8D%E7%A7%B0%0Agit%20branch%0A%E6%9F%A5%E7%9C%8B%E5%88%86%E6%94%AF%E6%A0%91%E7%8A%B6%E7%BB%93%E6%9E%84%0Agit%20log%20--graph%20--pretty%3Doneline%20--abbrev-commit%0A%60%60%60%0A%E5%90%88%E5%B9%B6%E5%88%86%E6%94%AF%EF%BC%9A%E7%94%A8%E4%BA%8E%E5%90%88%E5%B9%B6%E6%8C%87%E5%AE%9A%E5%88%86%E6%94%AF%E5%88%B0%E5%BD%93%E5%89%8D%E5%88%86%E6%94%AF%0A%60%60%60%0Agit%20merge%20dev%0A%60%60%60%0A%E5%88%A0%E9%99%A4%E5%88%86%E6%94%AF%EF%BC%9A%0A%60%60%60%0A%E5%88%A0%E9%99%A4%E5%88%86%E6%94%AF%0Agit%20branch%20-d%20dev%0A%E4%B8%80%E4%B8%AA%E6%B2%A1%E6%9C%89%E8%A2%AB%E5%90%88%E5%B9%B6%E8%BF%87%E7%9A%84%E5%88%86%E6%94%AF%EF%BC%8C%E5%A6%82%E6%9E%9C%E8%A6%81%E5%BC%BA%E8%A1%8C%E5%88%A0%E9%99%A4%EF%BC%8C%E9%9C%80%E8%A6%81%E4%BD%BF%E7%94%A8%E5%A4%A7%E5%86%99%E7%9A%84-D%E5%8F%82%E6%95%B0%0Agit%20branch%20-D%20test%0A%E5%88%A0%E9%99%A4%E8%BF%9C%E7%A8%8B%E5%88%86%E6%94%AF%0Agit%20branch%20origin%20%3Adev%0A%60%60%60%0A%E7%AE%80%E5%8C%96%E5%88%86%E6%94%AF%E7%BA%BF%EF%BC%9A%0A%E6%8A%8A%E5%88%86%E5%8F%89%E7%9A%84%E6%8F%90%E4%BA%A4%E5%8E%86%E5%8F%B2%E2%80%9C%E6%95%B4%E7%90%86%E2%80%9D%E6%88%90%E4%B8%80%E6%9D%A1%E7%9B%B4%E7%BA%BF%EF%BC%8C%E7%9C%8B%E4%B8%8A%E5%8E%BB%E6%9B%B4%E7%9B%B4%E8%A7%82%EF%BC%8C%E7%BC%BA%E7%82%B9%E6%98%AF%E6%9C%AC%E5%9C%B0%E7%9A%84%E5%88%86%E5%8F%89%E6%8F%90%E4%BA%A4%E4%BC%9A%E8%A2%AB%E4%BF%AE%E6%94%B9%0A%60%60%60%0Agit%20rebase%0A%60%60%60%0A%23%20%E8%BF%9C%E7%A8%8B%E4%BB%93%E5%BA%93%0A%23%23%20%E9%80%9A%E8%BF%87SHH%E9%AA%8C%E8%AF%81%0A%E6%B7%BB%E5%8A%A0SSH%20KEY%EF%BC%8C%E4%B8%8D%E7%84%B6%E6%97%A0%E6%B3%95%E6%8E%A8%E9%80%81%E6%95%B0%E6%8D%AE%E5%88%B0GITHUB%0A%E5%85%88%E5%9C%A8%E6%9C%AC%E5%9C%B0%E7%94%9F%E6%88%90SSH%20key%EF%BC%9A%0A%60%60%60%0Assh-keygen%20-t%20rsa%20-C%20%22XXXXX%40QQ.COM%22%0A%60%60%60%0A!%5B4fce1d974c5bdabc49d892f4b2265da1.png%5D(evernotecid%3A%2F%2FB6387AF4-038A-4E8F-B1A7-ACFE95B120B3%2Fappyinxiangcom%2F15363742%2FENResource%2Fp997)%0A%E7%94%A8%E6%9F%A5%E7%9C%8B%E7%94%9F%E6%88%90%E7%9A%84KEY%E4%BF%A1%E6%81%AF%0A!%5B352aaa59cb245b073a9be19de022bfd6.png%5D(evernotecid%3A%2F%2FB6387AF4-038A-4E8F-B1A7-ACFE95B120B3%2Fappyinxiangcom%2F15363742%2FENResource%2Fp1002)%0A%E5%A1%AB%E5%86%99%E5%88%B0GITHUB%E4%B8%AD%0A!%5B6e0469e937b43e9071c1c6bfb00cb374.png%5D(evernotecid%3A%2F%2FB6387AF4-038A-4E8F-B1A7-ACFE95B120B3%2Fappyinxiangcom%2F15363742%2FENResource%2Fp1149)%0A!%5B7e504a699345a8c1e52b28faf9aa3523.png%5D(evernotecid%3A%2F%2FB6387AF4-038A-4E8F-B1A7-ACFE95B120B3%2Fappyinxiangcom%2F15363742%2FENResource%2Fp950)%0A!%5Bf13b4a5056dc6894051606aab352b4c5.png%5D(evernotecid%3A%2F%2FB6387AF4-038A-4E8F-B1A7-ACFE95B120B3%2Fappyinxiangcom%2F15363742%2FENResource%2Fp1004)%0A%23%23%20%E6%96%B0%E5%BB%BA%E8%BF%9C%E7%A8%8B%E4%BB%93%E5%BA%93%0A!%5B006676ed2392cf2904168023ba15e2bb.png%5D(evernotecid%3A%2F%2FB6387AF4-038A-4E8F-B1A7-ACFE95B120B3%2Fappyinxiangcom%2F15363742%2FENResource%2Fp952)%0A!%5B0e48bb1f5ac68269b58f1c67aad08d28.png%5D(evernotecid%3A%2F%2FB6387AF4-038A-4E8F-B1A7-ACFE95B120B3%2Fappyinxiangcom%2F15363742%2FENResource%2Fp953)%0A%23%23%20%E5%85%8B%E9%9A%86%E8%BF%9C%E7%A8%8B%E4%BB%93%E5%BA%93%0A%E9%80%89%E6%8B%A9SSH%E9%AA%8C%E8%AF%81%EF%BC%8C%E5%A4%8D%E5%88%B6%E9%93%BE%E6%8E%A5%E4%BF%A1%E6%81%AF%EF%BC%9A%0A!%5Bde886ed86c23708e595cfe162ed20acf.png%5D(evernotecid%3A%2F%2FB6387AF4-038A-4E8F-B1A7-ACFE95B120B3%2Fappyinxiangcom%2F15363742%2FENResource%2Fp1151)%0A%E6%89%93%E5%BC%80Git%20Bash%20Here%E5%85%8B%E9%9A%86%E8%BF%9C%E7%A8%8B%E4%BB%93%E5%BA%93%0A%60%60%60%0Agit%20clone%20git%40github.com%3ATationGH%2FtestRepo.git%0A%60%60%60%0A%23%23%20%E6%96%B0%E5%BB%BA%E5%88%86%E6%94%AF%0A%E8%BE%93%E5%85%A5%E6%96%B0%E5%BB%BA%E5%88%86%E6%94%AF%E5%90%8D%EF%BC%8C%E5%9B%9E%E8%BD%A6%EF%BC%8C%E4%B8%8B%E9%9D%A2%E4%BC%9A%E5%87%BA%E7%8E%B0%E5%88%9B%E5%BB%BA%E5%88%86%E6%94%AF%E7%9A%84%E9%80%89%E9%A1%B9%EF%BC%8C%E7%82%B9%E5%87%BB%E5%8D%B3%E5%8F%AF%E5%88%9B%E5%BB%BA%E5%88%86%E6%94%AF%0A!%5Bd3f2acad852361b9a38ca204dc596f14.png%5D(evernotecid%3A%2F%2FB6387AF4-038A-4E8F-B1A7-ACFE95B120B3%2Fappyinxiangcom%2F15363742%2FENResource%2Fp955)%0A%E5%90%8E%E7%BB%AD%E5%B0%B1%E5%8F%AF%E4%BB%A5%E9%80%89%E6%8B%A9%E5%88%B0%E6%96%B0%E7%9A%84%E5%88%86%E6%94%AF%E4%BA%86%0A!%5B398c4b04501204a05c756e2a8b8038a4.png%5D(evernotecid%3A%2F%2FB6387AF4-038A-4E8F-B1A7-ACFE95B120B3%2Fappyinxiangcom%2F15363742%2FENResource%2Fp956)%0A%E5%A6%82%E6%9E%9C%E8%BF%9C%E7%A8%8B%E4%BB%93%E5%BA%93%E5%BB%BA%E4%BA%86dev%E5%88%86%E6%94%AF%EF%BC%8C%E6%9C%AC%E5%9C%B0%E4%BB%93%E5%BA%93%E6%9C%AA%E5%BB%BA%E6%AD%A4dev%E5%88%86%E6%94%AF%EF%BC%8C%E5%8F%AF%E4%BB%A5%E5%B0%86%E8%BF%9C%E7%A8%8Bdev%E5%88%86%E6%94%AF%E6%8B%89%E5%8F%96%E5%88%B0%E6%9C%AC%E5%9C%B0%0A%60%60%60%0Agit%20checkout%20-b%20dev%20origin%2Fdev%0A%60%60%60%0A%E5%A6%82%E6%9E%9C%E9%9D%9E%E4%B8%8A%E4%B8%80%E6%AD%A5%E6%93%8D%E4%BD%9C%EF%BC%8C%E8%80%8C%E6%98%AF%E6%9C%AC%E5%9C%B0%E5%92%8C%E8%BF%9C%E7%A8%8B%E9%83%BD%E5%8D%95%E7%8B%AC%E5%BB%BA%E4%BA%86dev%E5%88%86%E6%94%AF%EF%BC%8C%E9%82%A3%E5%B0%B1%E8%A6%81%E5%85%88%E6%8A%8A%E4%B8%A4%E8%80%85%E5%85%88%E5%85%B3%E8%81%94%E8%B5%B7%E6%9D%A5%0A%60%60%60%0Agit%20branch%20--set-upstream-to%3Dorigin%2Fdev%20dev%0A%60%60%60%0A%23%23%20%E6%9F%A5%E7%9C%8B%0A%E6%9F%A5%E7%9C%8B%E8%BF%9C%E7%A8%8B%E4%BB%93%E5%BA%93%E5%BA%93%E4%BF%A1%E6%81%AF%EF%BC%9A%0A%60%60%60%0Agit%20remote%20-v%0A%60%60%60%0A%23%23%20%E6%8E%A8%E9%80%81%0A%E6%8E%A8%E9%80%81%E5%BD%93%E5%89%8D%E5%88%86%E6%94%AF%E5%88%B0%E8%BF%9C%E7%A8%8Bmaster%E5%88%86%E6%94%AF%0A%60%60%60%0Agit%20push%20origin%20master%0A%60%60%60%0A%23%23%20%E6%8B%89%E5%8F%96%0Agit%20fetch%EF%BC%9A%0A%E6%8B%89%E5%8F%96%E6%97%B6%E4%B8%8D%E4%BC%9A%E6%8A%8A%E8%BF%9C%E7%A8%8B%E5%88%86%E6%94%AF%E7%89%88%E6%9C%AC%E5%90%88%E5%B9%B6%E5%BD%93%E5%89%8D%E5%88%86%E6%94%AF%E4%B8%8A%EF%BC%8C%E8%80%8C%E6%98%AF%E5%B0%86%E8%BF%9C%E7%A8%8B%E5%88%86%E6%94%AF%E7%89%88%E6%9C%AC%E6%94%BE%E5%88%B0%E4%B8%80%E4%B8%AA%E9%9A%90%E8%97%8F%E7%9A%84commit%EF%BC%8C%E5%8F%AF%E4%BB%A5%E9%80%9A%E8%BF%87diff%E5%AF%B9%E6%AF%94%E4%B8%A4%E4%B8%AA%E7%89%88%E6%9C%AC%E7%9A%84%E5%B7%AE%E5%BC%82%EF%BC%8C%E8%BF%99%E6%A0%B7%E6%93%8D%E4%BD%9C%E6%9B%B4%E5%AE%89%E5%85%A8%EF%BC%8C%E4%B8%80%E8%88%AC%E6%89%A7%E8%A1%8C%E6%B5%81%E7%A8%8B%E5%A6%82%E4%B8%8B%0A%60%60%60%0A%E6%8B%89%E5%8F%96%E5%88%86%E6%94%AF%0Agit%20fetch%20origin%20dev%0A%E5%AF%B9%E6%AF%94%E5%B7%AE%E5%BC%82%0Agit%20diff%20origin%2Fdev%0A%E5%90%88%E5%B9%B6%E5%88%86%E6%94%AF%0Agit%20merge%20origin%2Fdev%0A%60%60%60%0A!%5B271aedece4421cd5c3e4f4bff6704fb4.png%5D(evernotecid%3A%2F%2FB6387AF4-038A-4E8F-B1A7-ACFE95B120B3%2Fappyinxiangcom%2F15363742%2FENResource%2Fp957)%0Agit%20pull%EF%BC%9A%0A%E7%9B%B8%E5%BD%93%E4%BA%8E%EF%BC%9Agit%20pull%20%3D%20git%20fetch%20%2B%20git%20merge%0A%E5%B0%91%E7%94%A8git%20pull%EF%BC%8C%E7%94%A8git%20fetch%E5%92%8Cgit%20merge%E4%BB%A3%E6%9B%BF%E5%AE%83%0A%60%60%60%0Agit%20pull%20origin%20dev%0A%60%60%60%0A%23%23%20%E8%A7%A3%E5%86%B3%E5%86%B2%E7%AA%81%0A%E5%A6%82%E6%9E%9C%E4%B8%8D%E5%90%8C%E5%88%86%E6%94%AF%E9%83%BD%E5%AF%B9%E5%90%8C%E4%B8%80%E6%96%87%E4%BB%B6%E8%BF%9B%E8%A1%8C%E4%BF%AE%E6%94%B9%EF%BC%8C%E5%90%88%E5%B9%B6%E6%9C%89%E5%8F%AF%E8%83%BD%E4%BC%9A%E6%8F%90%E7%A4%BA%E5%86%B2%E7%AA%81%EF%BC%8C%E5%A4%A7%E8%87%B4%E8%BE%93%E5%87%BA%E9%94%99%E8%AF%AF%E4%BF%A1%E6%81%AF%E5%A6%82%E4%B8%8B%EF%BC%9A%0A%60%60%60%0AAuto-merging%20README.md%0ACONFLICT%20(content)%3A%20Merge%20conflict%20in%20README.md%20%20%23%E5%90%88%E5%B9%B6%E5%8F%91%E7%94%9F%E5%86%B2%E7%AA%81%0AAutomatic%20merge%20failed%3B%20fix%20conflicts%20and%20then%20commit%20the%20result.%0A%60%60%60%0A%E6%89%93%E5%BC%80%E5%86%B2%E7%AA%81%E6%96%87%E4%BB%B6%E5%8F%AF%E4%BB%A5%E7%9C%8B%E5%88%B0git%E5%B0%86%E5%86%B2%E7%AA%81%E5%86%85%E5%AE%B9%E7%94%A8%E7%AC%A6%E5%8F%B7%E5%88%86%E5%89%B2%EF%BC%8C%E5%86%85%E5%AE%B9%E5%A4%A7%E8%87%B4%E5%A6%82%E4%B8%8B%EF%BC%9A%0A%60%60%60%0A%3C%3C%3C%3C%3C%3C%3C%20HEAD%0A11111%0A%3D%3D%3D%3D%3D%3D%3D%0A22222%0A%3E%3E%3E%3E%3E%3E%3E%20dev%0A%60%60%60%0AGit%E7%94%A8%3C%3C%3C%3C%3C%3C%3C%EF%BC%8C%3D%3D%3D%3D%3D%3D%3D%EF%BC%8C%3E%3E%3E%3E%3E%3E%3E%E6%A0%87%E8%AE%B0%E5%87%BA%E4%B8%8D%E5%90%8C%E5%88%86%E6%94%AF%E4%B8%A4%E4%B8%AA%E7%89%88%E6%9C%AC%E5%86%B2%E7%AA%81%E7%9A%84%E5%86%85%E5%AE%B9%EF%BC%8C%E6%88%91%E4%BB%AC%E4%BF%AE%E6%94%B9%E4%BF%9D%E5%AD%98%E5%85%B6%E4%B8%AD%E4%B8%80%E4%B8%AA%E7%89%88%E6%9C%AC%E5%90%8E%EF%BC%8C%E5%B0%B1%E5%8F%AF%E4%BB%A5%E9%87%8D%E6%96%B0%E6%8F%90%E4%BA%A4%E5%90%8E%E5%90%88%E5%B9%B6%0A%23%20%E5%AD%98%E5%82%A8%E7%8E%B0%E5%9C%BA%0A%E5%A6%82%E6%9E%9Cdev%E5%88%86%E6%94%AF%E5%81%9A%E4%BA%86%E4%BF%AE%E6%94%B9%E5%B7%B2add%E4%BD%86%E4%B8%8D%E6%83%B3commit%EF%BC%8C%E8%80%8C%E6%AD%A4%E6%97%B6%E9%9C%80%E8%A6%81%E7%94%A8master%E5%BC%80%E5%88%86%E6%94%AFISSUE-1%E4%BF%AE%E6%94%B9BUG%E5%90%8E%E6%8F%90%E4%BA%A4%EF%BC%8C%E5%A6%82%E6%9E%9C%E5%9C%A8ISSUE-1%E4%B8%8A%E4%BF%AE%E6%94%B9%E4%BC%9A%E5%BD%B1%E5%93%8D%E5%88%B0%E5%B7%A5%E4%BD%9C%E5%8C%BA%E3%80%82%E5%8F%AF%E4%BB%A5%E6%8A%8A%E5%BD%93%E5%89%8D%E5%B7%A5%E4%BD%9C%E7%8E%B0%E5%9C%BA%E5%AD%98%E5%82%A8%E4%B8%8B%E6%9D%A5%EF%BC%8C%E5%B7%A5%E4%BD%9C%E5%8C%BA%E6%81%A2%E5%A4%8D%E5%88%B0%E6%9C%80%E5%90%8E%E4%B8%80%E6%AC%A1%E6%8F%90%E4%BA%A4%E7%8A%B6%E6%80%81%EF%BC%8C%E7%AD%89ISSUE%E6%8F%90%E4%BA%A4%E5%AE%8C%E5%86%8D%E6%81%A2%E5%A4%8D%E5%9B%9E%E6%9D%A5%0A%60%60%60%0Agit%20stash%0A%60%60%60%0A%E6%9F%A5%E7%9C%8B%E5%AD%98%E5%82%A8%E7%9A%84%E5%B7%A5%E4%BD%9C%E7%8E%B0%E5%9C%BA%EF%BC%9A%0A%60%60%60%0Agit%20stash%20list%0A%60%60%60%0A%E6%81%A2%E5%A4%8D%E5%B7%A5%E4%BD%9C%E7%8E%B0%E5%9C%BA%EF%BC%9A%0A%60%60%60%0A%E6%81%A2%E5%A4%8D%E6%9C%80%E6%96%B0%E7%9A%84stash%EF%BC%8Cstash%E5%86%85%E5%AE%B9%E5%B9%B6%E4%B8%8D%E5%88%A0%E9%99%A4%EF%BC%8C%E4%BD%A0%E9%9C%80%E8%A6%81%E7%94%A8git%20stash%20drop%E6%9D%A5%E5%88%A0%E9%99%A4%0Agit%20stash%20apply%0A%E6%81%A2%E5%A4%8D%E6%8C%87%E5%AE%9A%E7%9A%84stash%0Agit%20stash%20apply%20stash%40%7B0%7D%20%0A%E6%81%A2%E5%A4%8D%E7%9A%84%E5%90%8C%E6%97%B6%E6%8A%8Astash%E5%86%85%E5%AE%B9%E4%B9%9F%E5%88%A0%E9%99%A4%0Agit%20stash%20pop%0A%60%60%60%0A%23%20%E6%A0%87%E7%AD%BE%E7%AE%A1%E7%90%86%0A%E6%A0%87%E7%AD%BE%E5%B0%B1%E6%98%AF%E8%B7%9F%E6%9F%90%E4%B8%AAcommit%E7%BB%91%E5%9C%A8%E4%B8%80%E8%B5%B7%E6%9C%89%E6%84%8F%E4%B9%89%E7%9A%84%E5%90%8D%E5%AD%97%EF%BC%8C%E6%A0%87%E7%AD%BE%E9%83%BD%E5%8F%AA%E5%AD%98%E5%82%A8%E5%9C%A8%E6%9C%AC%E5%9C%B0%EF%BC%8C%E4%B8%8D%E4%BC%9A%E8%87%AA%E5%8A%A8%E6%8E%A8%E9%80%81%E5%88%B0%E8%BF%9C%E7%A8%8B%0A%E7%BB%99commit%20id%EF%BC%88f52c633%EF%BC%89%E6%89%93%E4%B8%8A%E6%A0%87%E7%AD%BE%EF%BC%8C%E7%94%A8-a%E6%8C%87%E5%AE%9A%E6%A0%87%E7%AD%BE%E5%90%8D%EF%BC%8C-m%E6%8C%87%E5%AE%9A%E8%AF%B4%E6%98%8E%E6%96%87%E5%AD%97%0A%60%60%60%0Agit%20tag%20-a%20v0.1%20-m%20%22version%200.1%20released%22%201094adb%0A%60%60%60%0A%E6%9F%A5%E7%9C%8B%E6%A0%87%E7%AD%BE%0A%60%60%60%0Agit%20show%0A%60%60%60%0A%E5%88%A0%E9%99%A4%E6%A0%87%E7%AD%BE%EF%BC%9A%0A%60%60%60%0Agit%20tag%20-d%20v1%0A%60%60%60%0A%E6%8E%A8%E9%80%81%E6%A0%87%E7%AD%BE%E5%88%B0%E8%BF%9C%E7%A8%8B%E4%BB%93%E5%BA%93%EF%BC%9A%0A%60%60%60%0A%23%E6%8E%A8%E9%80%81%E6%9F%90%E4%B8%AA%E6%A0%87%E7%AD%BE%E5%88%B0%E8%BF%9C%E7%A8%8B%0Agit%20push%20origin%20v1%0A%23%E4%B8%80%E6%AC%A1%E6%80%A7%E6%8E%A8%E9%80%81%E5%85%A8%E9%83%A8%E5%B0%9A%E6%9C%AA%E6%8E%A8%E9%80%81%E5%88%B0%E8%BF%9C%E7%A8%8B%E7%9A%84%E6%9C%AC%E5%9C%B0%E6%A0%87%E7%AD%BE%0Agit%20push%20origin%20--tags%0A%60%60%60%0A%E5%88%A0%E9%99%A4%E8%BF%9C%E7%A8%8B%E4%BB%93%E5%BA%93%E6%A0%87%E7%AD%BE%EF%BC%9A%0A%60%60%60%0Agit%20tag%20-d%20v1%0Agit%20push%20origin%20%3Arefs%2Ftags%2Fv1%0A%60%60%60%0A%23%20%E5%BF%BD%E7%95%A5%E6%96%87%E4%BB%B6%0A%E4%BD%BF%E7%94%A8%E6%96%87%E6%9C%AC%E7%BC%96%E8%BE%91%E5%99%A8%E5%88%9B%E5%BB%BA%E4%B8%80%E4%B8%AA.gitignore%E6%96%87%E4%BB%B6%EF%BC%8C%E6%8F%90%E4%BA%A4%E5%88%B0git%EF%BC%8C%E8%BF%99%E6%A0%B7.gitignore%E6%96%87%E4%BB%B6%E9%87%8C%E9%9D%A2%E5%86%99%E7%9A%84%E6%96%87%E4%BB%B6%E5%90%8D%E5%B0%86%E8%A2%ABgit%E5%BF%BD%E7%95%A5%0A%60%60%60%0A%23%20gitignore%20file%3A%0Atest.txt%0A*.exe%0A%60%60%60