二、伊森商城 环境 git使用 p7拓展

本文详细介绍了Git的基本操作,包括查看修改状态、添加到暂存区、提交、查看提交日志和版本回退。进一步讲解了分支管理,如创建、切换、合并及解决冲突。还涉及了远程仓库的使用,如添加、推送、克隆和拉取。最后探讨了在IntelliJ IDEA中操作Git的方法。
摘要由CSDN通过智能技术生成

目录

一、获取本地仓库

二、基础操作指令

 2.1、查看修改的状态

 2.2、添加工作区到暂存区(add)

 2.3、提交暂存区到本地仓库(commit)

 2.4、查看提交日志(log)

  2.5、版本回退

 三、分支

 3.1、查看分支

3.2、创建本地分支

3.3、切换分支(checkout)

3.4、合并分支(merge)

3.5、删除分支

3.6、解决冲突

 3.7、开发中分支使用原则与流程

 四、操作远程仓库

4.1、添加远程仓库

4.2 查看远程仓库

4.3、推送到远程仓库

 4.4、本地分支与远程分支的关联关系

4.5、从远程仓库克隆

4.6、从远程仓库中抓取和拉取

4.7、解决合并冲突

五、Idea操作Git 

5.1、更新项目、解决冲突

5.1.1、首先更新项目

5.1.2、手动解决冲突

5.2、分支操作

IDEA常用GIt操作入口

铁令


前言

Git工作流程图

 命令如下:
1.clone (克隆):从远程仓库中克隆代码到本地仓库


2.checkout(检出) :从本地仓库中检出一个仓库分支然后进行修订

3.add(添加):在提交前先将代码提交到暂存区


4.commit(提交)︰提交到本地仓库。本地仓库中保存修改的各个历史版本


5. fetch (抓取)︰从远程库,抓取到本地仓库,不进行任何的合并动作,一般操作比较少。


6.pull (拉取)︰从远程库拉到本地库,自动进行合并(merge),然后放到到工作区,相当于fetch+merge

7.push(推送)︰修改完成后,需要和团队成员共享代码时,将代码推送到远程仓库
 

一、获取本地仓库

1、在电脑的任意位置创建一个空目录

2、进入这个目录中,点击右键打开git bash窗口

3、执行命令git init

4、如果创建成功后可在文件夹下看到隐匿的的.git目录

二、基础操作指令

git工作目录下对于文件的修改(增加、删除、更新)会存在几个状态,这些修改的状态会随着我们执行的Git的命令而发生变化

(目录中除了.git目录,其余的都是工作目录)

1. git add              (工作区 --> 暂存区)

2. git commit        (暂存区 --> 本地仓库)

 2.1、查看修改的状态

作用:查看的修改的状态(暂存区、工作区)

命令:git status

 

 2.2、添加工作区到暂存区(add)

作用:添加工作区的一个或多个文件的修改到暂存区

命令:git add 单个文件名|通配符

        将所有修改加入暂存区:git add .

 

 2.3、提交暂存区到本地仓库(commit)

作用:提交暂存区内容到本地仓库的当前分支

命令:git commit -m "注释内容"

 

 2.4、查看提交日志(log)

作用:查看提交记录

命令:git log [option]

        option:

                        --all 显示所有分支

                        --pretty=oneline 将提交信息显示为一行

                        --abbrev-commit 使得输出的commitld更简短

                        --graph 以图的形式显示

 

  2.5、版本回退

作用:版本切换

命令:git reset --hard commitID

        commitID 可以使用git log指令查看

如何查看已经删除的记录?

        git reflog

        这个指令可以看到已经删除的提交记录

 

 三、分支

几乎所有的版本控制系统都以某种形式支持分支。使用分支以为着你可以把你的工作从主线上分离来进行重大的Bug修改、开发新功能,以免影响开发主线。

 3.1、查看分支

命令:git branch

3.2、创建本地分支

命令:git branch 分支名

3.3、切换分支(checkout)

命令:git checkout 分支名

还可以直接切换到一个不存在的分支(创建并切换)

命令:git checkout -b 分支名

 

HEAD指向谁,谁就是当前的分支

3.4、合并分支(merge)

一个分支上的提交可以合并到另一个分支

命令:git merge 分支名称

3.5、删除分支

 不能删除当前分支,只能删除其他分支

git branch -d 分支名 删除分支时,需要做各种检查

git branch -D 分支名 不做任何检查,强制删除

3.6、解决冲突

当两个分支上对文件的修改可能会存在冲突,例如同时修改了同一个文件的同一行,这时就需要手动解决冲突,解决冲突步骤如下:

        1. 处理文件中冲突的地方

        2. 将解决完成冲突的文件加入暂存区(add)

        3. 提交当仓库(commit)

 

 3.7、开发中分支使用原则与流程

几乎所有的版本控制系统都以某种形式支持分支。使用分支意味着你可以把你的工作从开发主线上分离开来进行重大的Bug修改、开发新功能,以免影响开发主线。

在开发中,一般有如下分支使用原则与流程:

1. master(生产)分支

线上分支,主分支,中小规模的项目作为线上运行的应用对应的分支;

2. develop(开发)分支

是从master创建的分支,一般作为开发部门的主要开发分支,如果没有其他并行开发不同期上线要求,都可以在此版本进行开发,阶段开发完成后,需要是合并到master分支,准备上线。

 3. feature/xxxx分支

从develop创建的分支,一般是同期并行开发,但不同期上线时创建的分支,分支上的研发任务完成后合并到develop分支。

4. - hotfix/xxxx分支

从master派生的分支,一般作为线上bug修复使用,修复完成后需要合并到master、test、develop分支。

5. 还有一些其他分支,在此不再详述,例如test分支(用于代码测试)、pre分支(预上线分支)等等。

 

 四、操作远程仓库

4.1、添加远程仓库

此操作是先初始化本地库,然后与已创建的远程库对接

命令:git remote add 远端名称 仓库路径

仓库路径使用的是克隆/下载中的ssh

例如:git remote add origin git@gitee.com:eason_leeson/leeson_shop.git

4.2 查看远程仓库

git remote

4.3、推送到远程仓库

命令:git push -f --set-upstream 远端名称 本地分支名 :远端分支名

如果远程分支名和本地分支名相同,则可以只写本地分支
        git push origin master

--set-upstream推送到远端的同时并且建立起和远端分支的关系

        git push --set-upstream origin master

如果当前分支已经和远端分支关联,则可以省略分支名和远端名

        git push 将master分支推送到已关联的远端分支

-f 就是本地仓库跟远程仓库同一行代码冲突,不给推送,那么 -f 就是强制推送,本地的覆盖远端的

 4.4、本地分支与远程分支的关联关系

查看关联关系

命令:git branch -vv

 

4.5、从远程仓库克隆

如果已经有一个远端仓库,我们可以直接clone到本地。
命令: git clone 仓库路径 本地目录

本地目录可以省略,会自动生成一个目录

4.6、从远程仓库中抓取和拉取

远程分支和本地的分支一样,我们可以进行merge操作,只是需要先把远端仓库里的更新都下载到本地,再进行作。


抓取命令:git fetch [remote name][branch name]
抓取指令就是将仓库里的更新都抓取到本地,不会进行合并

如果不指定远端名称和分支名,则抓取所有分支。


拉取命令:git pull [remote name] [branch name]
拉取指令就是将远端仓库的修改拉到本地并自动进行合并,等同于fetch+merge

如果不指定远端名称和分支名,则抓取所有并更新当前分支。

 

4.7、解决合并冲突

在一段时间,A、B用户修改了同一个文件,且修改了同一行位置的代码,此时会发生合并冲突。

A用户在本地修改代码后优先推送到远程仓库,此时B用户在本地修订代码,提交到本地仓库后,也需要推送到远程仓库,此时B用户晚于A用户,故需要先拉取远程仓库的提交,经过合并后才能推送到远端分支,如下图所示。

在B用户拉取代码时,因为A、B用户同一段时间修改了同一个文件的相同位置代码,故会发生合并冲突。


远程分支也是分支,所以合并时冲突的解决方式也和解决本地分支冲突相同相同。

 

五、Idea操作Git 

5.1、更新项目、解决冲突

A同学增加了登出功能

B同学也新增了登出功能

我们发现,A和B添加的代码都在同一个位置上

这时候A把代码推送到了远程仓库上,B就推送不了了。这时候怎么办呢?

5.1.1、首先更新项目

5.1.2、手动解决冲突

这时候就会提示合并的时候有冲突,不要慌,把这个窗口关闭掉!

这时候会发现有冲突的文件就报红了,打开它,手动将代码进行调整。

HEAD指当前仓库

 

修改完后,把这个文件进行添加(add)操作,然后再提交并且推送就OK!

A同学这个时候代码就跟云端的不一样咯,怎么办?再点击一次Git的更新项目就OK了

5.2、分支操作

点击右下角的master

点击新分支,起个名就算新建分支了

不过,在Git的控制台这里直接创建

点击哪个版本,直接创建哪个版本的分支,更方便

IDEA常用GIt操作入口

 

铁令

1. 切换分支前先提交本地的修改
2. 代码及时提交,提交过了就不会丢
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值