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'

浙公网安备 33010602011771号