Git开发流程

git使用的流程-精选

本篇文章是帮助初次使用git的同学进行协同办公的操作,帮助小伙伴能够尽快熟悉git使用流程。

安装这里不再讲解。
初次配置安装的同学注意准备工作

1.配置Git-用户名、邮箱

$ git config --global user.email myEmail@example.com```
  配置:user.name 名字随意 user.eamil 使用github上注册的邮箱
  
2.配置Git-秘钥生成
-------------------

```$ git ssh-keygen -t rsa -C 你的邮箱```

![这里写图片描述](https://img-blog.csdn.net/20180804195512163?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80MjMwMTYyOA==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70)
如果不配置秘钥-会一直提示你输入账户密码,所以这步很重要。一直下一步就完成了,最后会把秘钥保存在相应路径,我的路径是/c/Users/zhong/.ssh/id_rsa.pub

3.配置Git-秘钥配置
-------------------
上面生成秘钥后,需要在你github中配置,这要秘钥才会生效

![这里写图片描述](https://img-blog.csdn.net/20180804200936381?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80MjMwMTYyOA==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70)
![这里写图片描述](https://img-blog.csdn.net/20180804200406659?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80MjMwMTYyOA==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70)
点击头像下拉框 settings -选中左侧 SSH keys 栏目,将公钥粘贴上去,保存即可生效。

4.配置Git-创建仓库(clone)
-------------------
```$ mkdir learngit```
```$ cd learngit```
```$ git init```

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

这里创建一个名为 test 的文件 ,进入该文件后执行初始化,创建后文件中会生成一个 .git目录,不要更改仓库里任何文件

5.配置Git-获取项目(clone)
-------------------
完成上诉配置后,开始获取项目

```git clone http://code.test.com/eth/test.git```
![这里写图片描述](https://img-blog.csdn.net/20180804202331702?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80MjMwMTYyOA==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70)

耐心等待下载完毕

6.配置Git-创建分支(本地分支-远程分支)
---------------
git分支的作用,这里不再多说,网上有更加详细的说明。
  ```$ git checkout -b "test" ```
   ```$ git push origin test  ```
   ![这里写图片描述](https://img-blog.csdn.net/20180817110708870?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80MjMwMTYyOA==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70)
首先创建本地分支,创建完毕再把本地分`这里写代码片`支push提交 到远程。就会创建一个远程分支。

7.配置Git-提交修改文件
---------------
1.查看状态,显示哪些文件有改动
  ```$ git status  ```
  2.把想要修改的文件传到本地仓库
  ```$ git add  hanmgr/control/member.php ```
  3.把本次修改做一个标记
```$ git commit -m "本次修改标记" ```
4.把本地仓库的数据提交到远程仓库中
 ```$ git push origin zzb1 ```

通过编辑器打开自己clone下来的项目,然后做修改,修改后进行提交
![这里写图片描述](https://img-blog.csdn.net/20180817111505732?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80MjMwMTYyOA==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70)

5.合并远程仓库 zzb1 到 dev中
![这里写图片描述](https://img-blog.csdn.net/20180817131827265?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80MjMwMTYyOA==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70)

9.配置Git-冲突问题
---------------
冲突环境 ,当多个人对项目进行开发的时候,出现冲突
比如我有一个文件member.php 
人员A 对 更改
 “//会员资金池明细,资金池,循环池入账明细”
 人员B
  “//会员资金池明细,资金池”
![这里写图片描述](https://img-blog.csdn.net/20180817132300937?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80MjMwMTYyOA==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70)
![这里写图片描述](https://img-blog.csdn.net/20180817132309119?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80MjMwMTYyOA==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70)

人员A更改后提交,并且合并到了dev 分支上, 然后人员B 更改提交并且合并到dev 分支上
当人员B合并的时候出现冲突
![这里写图片描述](https://img-blog.csdn.net/20180817132627162?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80MjMwMTYyOA==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70)

首先我们先解决这个冲突(在线解决冲突,删除掉冲突部分后再次提交合并)
![这里写图片描述](https://img-blog.csdn.net/20180817133117226?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80MjMwMTYyOA==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70)
![这里写图片描述](https://img-blog.csdn.net/20180817133126589?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80MjMwMTYyOA==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70)

9.配置Git-在开发中避免冲突
---------------
如何避免冲突,接着上面列子 
人员B刚刚在线解决了冲突, 现在dev 分支上 member.php  “ //为会员资金池明细,资金池,循环池入账明细记录“
现在人员A 把这行更改为 “ //会员资金池明细,每个人购买商品后 资金池,循环池入账明细“
人员A上传的时候肯定也会冲突,那么人员A如何去做。

1.把status 后的有变动的文件存在 缓冲区中
  ```$ git stash  ```
2.从远程项目中拉取一次代码
```$ git pull origin dev  ```
3.检查改变后的代码与远程代码进行对比
```$ git stash  show -p ```
4. 在把刚刚放入缓冲区的文件拉取下来,拉取后会合并本地代码
```$ git stash pop ```
![这里写图片描述](https://img-blog.csdn.net/20180817135112859?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80MjMwMTYyOA==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70)
5.检查本地代码,是否存在冲突
![这里写图片描述](https://img-blog.csdn.net/20180817135824746?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80MjMwMTYyOA==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70)
6.解决冲突后在提交一次,这里合并时候不会冲突
![这里写图片描述](https://img-blog.csdn.net/20180817140036187?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80MjMwMTYyOA==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70)
![这里写图片描述](https://img-blog.csdn.net/20180817140239934?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80MjMwMTYyOA==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70)

10.配置Git-版本回滚
---------------
这个功能在开发中经常用到,主要用于回滚本地文件到某一提交之前
1.显示有哪些版本
  ```$ git log  ```
2.回滚到某个版本
```git reset 10c031403bb7a65040dbfab0dcbbd9041555

这里写图片描述

11.配置Git-删除分支(本地/远程)

1.删除远程分支
$ git push origin --delete zzb1
2.删除本地分支
$ git branch -D zzb1
这里写图片描述

12.配置Git-删除分支(本地/远程)

分支合并
在这里插入图片描述
git push origin dev

本次博客到此结束,当然很多地方不完善,但是对于才开始使用git的朋友有一定的帮助。还有一些图形操作界面这里暂时不做研究。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值