如何使用Git(一)

Git是版本控制工具,可以通过它来push/pull我们的远程仓库,进而维护我们小组成员共同开发的代码

目录

第一步 安装Git

 Git配置

直接找到配置文件直接修改

使用命令修改

 教你使用Git命令

init

clone

status

add

commit

push

log命令

pull

冲突


第一步 安装Git

无脑Next 下一步就可以

Credential manager  √ 要不要保存你的用户名密码,否则每一次提交的时候,都要输入用户名和密码

Vim: Linux下文本编辑器 → 代码提交的

如何退出来

  1. ESC
  2. 冒号 wq 或者 冒号q!
  3. 回车

安装成功了,鼠标右键,会出现一个git bash

 Git配置

在第一次执行commit之前完成(暂存区提交到本地仓库)

配置用户信息:user.name\user.email

直接找到配置文件直接修改

使用命令修改

git config --global user.name “名字”

 教你使用Git命令

init

如果使用这个命令会创建一个空的本地仓库,如果需要和远程仓库连接的话需要做些配置,并且如果有远程仓库去建立连接的话也容易导致里面内容发生混乱

切记本地仓库里面的.git下的内容不要去修改,如果修改这个仓库大概率会报废

git init命令:把前面目录当作是工作区,并且创建一个隐藏的.git的文件夹(本地仓库)

clone

git clone 仓库地址

在一个文件夹下clone不同的远程仓库使用这种方式

克隆一个远程仓库到本地

git clone 仓库地址 本地文件路径 

在你指定的路径下(这个指定路径必须为一个空路径),复制远程仓库当成是工作区

通常这个本地文件路径会写一个当前路径

git clone 仓库地址 .

创建个文件夹直接当做工作区

status

git status

查看工作区和暂存区的状态

我们要根据文字的颜色判断变化zainali

如果文字的颜色是红色的,代表变化还在工作区中;

如果文字的颜色是绿色的,代表变化已经由工作区提交到暂存区了。

add

        git add 发生变化的文件名

        将该文件中的变化由工作区提交到暂存区

 补充:

文件名

git add 文件夹名/*     → 将该目录下的所有的发生变化内容都提交到暂存区

 git add *.xxx       → 将某一类产生变化的文件全部提交到暂存区

git add .

谨慎操作:将所有的变化都提交到暂存区

开发过程中会生成一些不需要提交的文件,比如说class字节码文件、打包后的文件、target目录下的其他文件、.idea文件夹下文件,这些文件会给开发带来不必要的麻烦

建议:在执行git add . 之前,先执行一下git status ,来查看是否有提示不需要管理的文件

 

commit

这一步骤是将暂存区所有的变化都提交到本地仓库

git commit -m “自定义消息”

所有暂存区的变化,提交到本地仓库,完成一个版本的记录

push

git push本地仓库的变化提交到远程仓库

注意---本地仓库要能够提交到远程仓库:本地仓库的版本不能够落后于远程仓库的版本

当我们把暂存区的变化提交到本地仓库的时候这个版本就已经产生了

 注意:本地仓库要领先于远程仓库,在push之前先pull

log命令

git log 查看本地仓库的版本信息

越往上就是越新的的一个版本号

pull

获得远程仓库领先的内容,远程仓库的版本要比本地仓库的版本更新

Repository1当中执行的:

Repository2当中执行的:

 

注意事项:本地工作区产生变化的文件 如果和远程仓库里更新的这部分文件相同的文件,需要先进行commit。

比如远程仓库里有更新的UserController.java,而我现在在开发,正在开发UserController,会产生工作区的变化,先要将工作区的变化提交到暂存区,然后commit到远程仓库

小结

push之前先pull,pull之前先commit

冲突

(以下假设仓库1先提交)

非常常见,是开发过程中非常正常的一件事情

什么叫冲突。

Git会自动执行代码合并,有些情况git没法完成自动合并,没法自动合并,就会产生冲突。

提示出冲突的位置,我们可以找到冲突并解决。

冲突产生的场景:多名开发人员开发同一个文件中的内容,通常是在push之前已经有人commit

Repository1中的操作:

Repository2中的操作:

 解决办法就是落后的那个本地仓库先进行一个pull操作

于是:::可以获取到其他本地仓库和远程仓库同步后的统一版本号

 

处理冲突的话也会产生一个新的版本

 

 判断是否产生冲突的标志

通过git pull 以及git status这里我们就可以知道产生冲突的文件是哪个了

 通过标志位可以找到是谁提交的和自己有冲突然后沟通进行修改

 修改

 此时我们的冲突仓库已经领先远程仓库了,这时候需要从工作区提交到暂存区提交到本地仓库,提交到远程仓库

 

 Repository2中执行

先提交的不需要处理冲突

repository1中执行

完整流程图如下所示

 

 像下图这种情况是可以自动合并的

但是你得会退出这个vim编辑器

 

 然后我们就可以愉快的push了

绝大部分场景可以帮助我们自动合并,少部分情况需要处理冲突

大体流程就是先去pull 找到冲突的文件,改为你需要的逻辑重新add commit push就可以了

小结

执行pull发现冲突,status找到冲突文件,修改为正确业务,重新add、commit、push

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值