1新建一个存储git的文件夹,命令是:
toto@toto-K45VD:~$ mkdir gitfolder |
2初始化一个git仓库,命令是:
toto@toto-K45VD:~$cd gitfolder/ toto@toto-K45VD:~/gitfolder$ls toto@toto-K45VD:~/gitfolder$git init 初始化空的 Git版本库于 /home/toto/gitfolder/.git/ 注意:如果是第一次使用git,还要对git对进行如下配置 git config --global user.email "yourEmail@qq.com" git config --global user.name "tuzuoquan" |
3 显示仓库内的所有内容,命令是:
toto@toto-K45VD:~/gitfolder$ll 总用量 12 drwxrwxr-x 3 toto toto 4096 11月 22 23:12 ./ drwxr-xr-x 31 toto toto 4096 11月 22 23:09 ../ drwxrwxr-x 7 toto toto 4096 11月 22 23:12 .git/ |
4 查看git仓库状态
toto@toto-K45VD:~/gitfolder$ git status 位于分支 master 初始提交 无文件要提交(创建/拷贝文件并使用"git add" 建立跟踪) toto@toto-K45VD:~/gitfolder$ |
5 在仓库里面创建一个文件,并将这个文件添加到仓库中(注意也可以使用git add .将之添加到版本仓库中)
toto@toto-K45VD:~/gitfolder$ touch readme.txt toto@toto-K45VD:~/gitfolder$ git status 位于分支 master 初始提交 未跟踪的文件: (使用 "git add <file>..." 以包含要提交的内容) readme.txt 提交为空,但是存在尚未跟踪的文件(使用 "gitadd" 建立跟踪) toto@toto-K45VD:~/gitfolder$ls readme.txt |
6 将新建的文件添加到跟踪,命令如下:
toto@toto-K45VD:~/gitfolder$ git status 位于分支 master 初始提交 要提交的变更: (使用 "git rm --cached <file>..." 撤出暂存区) 新文件:readme.txt toto@toto-K45VD:~/gitfolder$ |
7讲readme.txt提交到git版本仓库,命令如下:
toto@toto-K45VD:~/gitfolder$git commit -m 'commit readme.txt' [master(根提交) ad32b61]commit readme.txt 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 readme.txt toto@toto-K45VD:~/gitfolder$git status 位于分支 master 无文件要提交,干净的工作区 toto@toto-K45VD:~/gitfolder$ |
8查看当前分支信息,命令如下:
toto@toto-K45VD:~/gitfolder$git branch *master 或者使用 git branch -a |
9查看日志信息,命令如下:
toto@toto-K45VD:~/gitfolder$]git log commit ad32b612b632ab62e6fe46630f3c6b03a1ff1ce3 Author: tuzuoquan <you@example.com> Date:Sat Nov 22 23:31:12 2014 +0800 commit readme.txt toto@toto-K45VD:~/gitfolder$]git status 位于分支 master 无文件要提交,干净的工作区 toto@toto-K45VD:~/gitfolder$ |
10编辑readme.txt中的内容,并将之添加跟踪,并将之提交到版本仓库中去
readme.txt中的内容如下: 23:39 master readme.txt 查看git版本的状态,将readme.txt添加到git上.整个过程的命令如下: toto@toto-K45VD:~/gitfolder$git status 位于分支 master 尚未暂存以备提交的变更: (使用 "git add <file>..." 更新要提交的内容) (使用 "git checkout -- <file>..." 丢弃工作区的改动) 修改:readme.txt 修改尚未加入提交(使用 "git add" 和/或"git commit -a") toto@toto-K45VD:~/gitfolder$git add readme.txt toto@toto-K45VD:~/gitfolder$git status 位于分支 master 要提交的变更: (使用 "git reset HEAD <file>..." 撤出暂存区) 修改:readme.txt toto@toto-K45VD:~/gitfolder$git add readme.txt toto@toto-K45VD:~/gitfolder$git commit -m 'commited after modify' [master b5c97f9] commited after modify 1 file changed, 2 insertions(+) |
11创建一个develop分支,查看所有的分支,命令如下:
toto@toto-K45VD:~/gitfolder$git branch develop toto@toto-K45VD:~/gitfolder$git branch -a develop *master toto@toto-K45VD:~/gitfolder$ |
12查看git的日志信息
toto@toto-K45VD:~/gitfolder$git log commit b5c97f9ad74458b1ec6a7fc38684305e45fff4de Author:tuzuoquan <you@example.com> Date:Sat Nov 22 23:49:49 2014 +0800 commited after modify commit ad32b612b632ab62e6fe46630f3c6b03a1ff1ce3 Author: tuzuoquan <you@example.com> Date: Sat Nov 22 23:31:12 2014 +0800 commit readme.txt toto@toto-K45VD:~/gitfolder$ |
13切换到develop的分支,命令如下:
toto@toto-K45VD:~/gitfolder$git checkout develop 切换到分支 'develop' toto@toto-K45VD:~/gitfolder$ls readme.txt toto@toto-K45VD:~/gitfolder$git branch *develop master toto@toto-K45VD:~/gitfolder$ |
14创建2.txt,并将文件添加到对应的分支的版本仓库中.
toto@toto-K45VD:~/gitfolder$touch 2.txt toto@toto-K45VD:~/gitfolder$ls 2.txt readme.txt toto@toto-K45VD:~/gitfolder$git status 位于分支 develop 未跟踪的文件: (使用 "git add <file>..." 以包含要提交的内容) 2.txt 提交为空,但是存在尚未跟踪的文件(使用"git add" 建立跟踪) toto@toto-K45VD:~/gitfolder$vi 2.txt |
14 切换到develop分支
toto@toto-K45VD:~/gitfolder$ git checkout develop已经位于'develop'查看切换后的分支toto@toto-K45VD:~/gitfolder$ git branch -a* develop mastertoto@toto-K45VD:~/gitfolder$ ls2.txt readme.txt |
15 转换到master分支然后创建一个
toto@toto-K45VD:~/gitfolder$git checkout master切换到分支 'master'创建一个分支develop2toto@toto-K45VD:~/gitfolder$ git branch develop2toto@toto-K45VD:~/gitfolder$ git checkout develop2切换到分支 'develop2'toto@toto-K45VD:~/gitfolder$ ls2.txt readme.txt |
16 切换分支信息,并查看所在分支信息
toto@toto-K45VD:~/gitfolder$git checkout develop切换到分支 'develop'toto@toto-K45VD:~/gitfolder$ git branch* develop develop2 mastertoto@toto-K45VD:~/gitfolder$toto@toto-K45VD:~/gitfolder$ git branch* develop develop2 mastertoto@toto-K45VD:~/gitfolder$ ls2.txt readme.txt对develop分支中的readme.txt文件中的内容进行修改toto@toto-K45VD:~/gitfolder$ vi readme.txttoto@toto-K45VD:~/gitfolder$ git status位于分支 develop尚未暂存以备提交的变更: (使用 "gitadd <file>..." 更新要提交的内容) (使用 "git checkout -- <file>..." 丢弃工作区的改动) 修改: readme.txt未跟踪的文件: (使用 "git add <file>..." 以包含要提交的内容) .2.txt.swp 2.txt修改尚未加入提交(使用 "git add" 和/或 "git commit -a")toto@toto-K45VD:~/gitfolder$//将修改添加到分支toto@toto-K45VD:~/gitfolder$git add .toto@toto-K45VD:~/gitfolder$ git commit -m 'xiugai'[develop 722fbeb] xiugai 3 files changed, 2 insertions(+) create mode 100644 .2.txt.swp create mode 100644 2.txt |
17 切换分支到branch上,同时也修改develop分支中的文件readme.txt文件
toto@toto-K45VD:~/gitfolder$git branch* develop develop2 mastertoto@toto-K45VD:~/gitfolder$ git checkout develop2切换到分支 'develop2'toto@toto-K45VD:~/gitfolder$ lsreadme.txttoto@toto-K45VD:~/gitfolder$ vi readme.txttoto@toto-K45VD:~/gitfolder$git status位于分支 develop2尚未暂存以备提交的变更: (使用 "git add <file>..." 更新要提交的内容) (使用 "git checkout -- <file>..." 丢弃工作区的改动) 修改: readme.txt修改尚未加入提交(使用 "git add" 和/或 "git commit -a")toto@toto-K45VD:~/gitfolder$git commit -m 'develop2 commited after modified'位于分支 develop2尚未暂存以备提交的变更:修改: readme.txt修改尚未加入提交toto@toto-K45VD:~/gitfolder$ git add .toto@toto-K45VD:~/gitfolder$ git commit -m 'develop2 commited after modified'[develop28e8dc62] develop2 commited after modified 1 file changed, 1 insertion(+)toto@toto-K45VD:~/gitfolder$ |
18 先将develop合并到master,并解决合并冲突问题
toto@toto-K45VD:~/gitfolder$git merge develop自动合并 readme.txt冲突(内容):合并冲突于 readme.txt自动合并失败,修正冲突然后提交修正的结果。toto@toto-K45VD:~/gitfolder$冲突的内容如下:23:39 master readme.txt<<<<<<< HEAD11 : 00=======08:47 修改>>>>>>> develop为了解决合并时出现的冲突,需要修改readme.txt中的内容,修改后的内容如下:23:39master readme.txt08:47 修改 |
19 查看状态,并将修改正确后的文件提交到仓库中
toto@toto-K45VD:~/gitfolder$ git status位于分支 develop2您有尚未合并的路径。 (解决冲突并运行 "git commit")要提交的变更:新文件: .2.txt.swp新文件: 2.txt未合并的路径: (使用 "git add <file>..." 标记解决方案)双方修改: readme.txt |
20 将修改后的所有内容添加到仓库中
toto@toto-K45VD:~/gitfolder$git add .toto@toto-K45VD:~/gitfolder$ git status位于分支 develop2所有冲突已解决但您仍处于合并中。 (使用 "git commit" 结束合并) 要提交的变更新文件: .2.txt.swp新文件: 2.txt修改: readme.txttoto@toto-K45VD:~/gitfolder$git commit -m 'commit all'[develop2 749fb3c] commit alltoto@toto-K45VD:~/gitfolder$查看修改后的内容toto@toto-K45VD:~/gitfolder$ cat readme.txt23:39 master readme.txt08:47 修改toto@toto-K45VD:~/gitfolder$ |