2018-11-26-Python全栈开发-day89-git基本使用/分支开发

git是一种分布式的版本控制系统,可以方便的对版本进行更新和修改,以及协作开发。

1.安装git(windows)

  下载windows安装程序,之后打开窗口。这个窗口是一个小型的linux系统,可以使用大多数linux命令。

  

$ git config --global user.name "Your Name"
$ git config --global user.email "email@example.com"
设置git的用户信息

2.创建版本库

  在自己电脑中创建的文件都将保存在本地库中,也就是本地版本库中,这些库可以被git管理,将来创建远程库之后,就可以方便的来对本地和远程进行衔接。

  

git init 将这个文件夹初始化为库
在这个文件夹中包含了一个隐藏文件 .git,不允许进行修改。

3.对版本库内容进行修改

  

  git中分为工作区/暂存区/版本库

  其中工作区是你最新修改的区域,暂存区是将库add之后的区域,版本去是将暂存区的库commit之后.

  需要提交的文件修改通通放到暂存区,然后一次性提交暂存区的所有修改

  git add命令实际上就是把要提交的所有修改放到暂存区(Stage),然后,执行git commit就可以一次性把暂存区的所有修改提交到分支。

  一旦提交后,如果你又没有对工作区做任何修改,那么工作区就是“干净”的:

  3.1 将文件传送到暂存区

  

$ git add readme.txt

  3.2 提交到版本区

  

git commit -m 'first commit'
    -m表明带注释

  3.3查看工作区修改的内容

  

git status

  通过git diff查看具体修改了哪些内容

 

4.版本回退

  每commit一次,就对版本形成一个快照,相当于备份。

  4.1 git log

  可以通过git log来查看不同版本修改了哪些内容,显示的内容主要是md5识别码,作者以及修改时间

  

commit 7f55a4f88d3d630e4e244997f6a82204594e32d7 (HEAD -> master)
Author: ye <hai125698@outlook.com>
Date:   Mon Nov 26 22:08:21 2018 +0800

    third commit

commit 85443d25f5aab530a92edb22519d92dea880d189
Author: ye <hai125698@outlook.com>
Date:   Mon Nov 26 22:06:44 2018 +0800

    second commit

commit bd3e4b635b9aca4c4e0126e4dd60667e7ea86046
Author: ye <hai125698@outlook.com>
Date:   Mon Nov 26 22:02:27 2018 +0800

    first commit

 

  

  4.2  将版本回退到第二次

   在git中用head来表示当前的版本

   

git reset --hard HEAD^回退到上一个版本

  此时,通过gitlog查看,则只有两个版本信息,但是没关系,其实还是在的。

  可以通过 git relog来查看每一次操作命令,这里可以看到操作时的md5

  git reset --hard md5值      来回退到某一个固定的版本

 

  head指向哪个版本,git的版本就更新到哪里

  4.3 撤销修改git checkout

  可以丢弃工作区的修改,,,总之,是回到上一次add或者commit的状态

  4.3.1 将已经上传到暂存区进行撤销,重新放回到工作区

    git reset HEAD first.py 

5.删除文件

  删除文件之后,要用git rm来让git知道你确实是想删除这个文件。

 

2018--11--27

6.远程仓库

  目前所写的代码只是在本地而已,想要安全.协作的保存,还是要放到服务器上。

  一般是放到github上。

  6.1 添加远程库

    可以通过登录github来开始一个远程库,然后可以把这个库克隆到本地进行开发,当开发好之后,也可以再次同步到远程库,

  6.2 将本地库推送到远程库

    也可以直接将本地已经写好的库,推送到远程库。

7.分支管理

  分支管理和master主分支来说,相当于两个平行宇宙,主分支在进行的同时,分支也在进行功能的开发,然后将分支和主分支进行合并。

  在分支上可以进行新功能的开发,bug测试等

  7.1 创建分支

  

git checkout -b dev 创建并且切换到分支

git branch 查看当前分支


#合并分支
    合并分支一般是在主分支是进行合并,是以主分支主体的。
   

git checkout master  切换到主分支

git merge 进行分支合并

  7.2 解决冲突

   当分支和主分支有冲突的时候无法进行提交,需要对代码有冲突的地方进行修改,来解决冲突,再进行提交

  

  7.3 多人协作

    团队中多人负责不同的分支,当分支有问题的,需要先从主分支pull,修改后再进行push更新

8.标签管理

  git中可以对某次commit来进行备注,也就是标签,方便对此次理解和查找。

  

gti tag <name> 创建标签,是再此次的commit上


git tag  查看所有的标签


还可以创建带有说明的标签


git tag -a v1.0 -m 'this is a tag'

 

posted @ 2018-11-26 22:48  brownbearye  阅读(149)  评论(0)    收藏  举报