Git 基本应用

微信公众号:Java修炼指南
博客园:https://home.cnblogs.com/u/wuyx/
CSDN: https://mp.csdn.net/
简书:https://www.jianshu.com/
关注可与各位开发者共同探讨学习经验,以及进阶经验。如果有什么问题或建议,请在公众号留言。

之前4月份刚换公司,近期也算是比较渐渐的适应了新公司的节奏,于是乎乘着假期来写一些东西。之前出入公司时写过一篇git的使用,只是一些基本操作,于是打算再写一篇基础操作篇。我发现在开发过程中我们也许不仅仅使用git的命令行去操作与git远程仓库进行同步,可能会使用到eclipse的集成工具,或者是TortoiseGit等工具进行操作,或者是三者结合使用。

 

准备工作

新建git仓库

首先我们需要创建自己的git仓库,可以使用 github, 也可以使用码云,我在此处使用的是码云。
创建git仓库

下载 git 命令窗口

git 命令窗口 此处为我的云盘的资源 提取码为:85dl

下载 TortoiseGit 客户端

TortoiseGit 客户端 此处为我的云盘的资源 提取码为:2nqj

在eclipse中安装git插件

  1. 点击help – Install new software – Add 在Location中输入http://download.eclipse.org/egit/updates/
    下载git插件
  2. 将几个选项勾选,然后下一步,直到安装,重启eclipse,就安装完毕了
    选择插件
  3. 将自己git信息配置到eclipse中,Window – preferences配置个人信息

创建Git操作文件夹

这个文件夹用于学习git的操作,里面再创建三个文件夹,分别用git,eclipse,TortoiseGit来操作。
文件夹创建

clone项目

git 命令行clone项目

  1. 首先进入到文件夹,打开git命令窗口
    打开命令窗口
  2. init 初始化,将此文件夹变为git管理文件夹,并且文件夹中会出现 .git的文件夹
git init

  

初始化文件夹
3. 去码云中找到clone的路径找到git地址
4. clone 项目

git clone xxx

  

clone项目
5. 此时项目就被clone下来了。
在这里插入图片描述

eclipse Git插件clone项目

  1. 首先将eclipse的工作空间调整到刚刚创建得文件夹下面。
  2. 将项目clone进来,右键 – import – Git
    选择git导入项目
  3. 选择clone URL
    选择clone URL
  4. 在此处需要输入刚刚从码云上面复制下来的地址。
    输入clone地址
  5. 选择主干 master
    选择主干
  6. 选择存放地址,这里选择我们刚刚创建的地址。
    选择存放地址
  7. 选择导入得文件夹
    选择导入得文件夹
  8. 这里导入项目,下面报错了,为什么报错呢?因为在此处项目文件夹中其实是没有java项目存在,所以报错了,大家可以在码云中有项目时再进行拉取代码并导入。
    这里导入项目
    我们可以看到的是,码云上面的文件是下载下来了。
    查看文件

TortoiseGit clone项目

  1. 进入刚刚创建的TortoiseGit 的项目文件夹,右键 – Git clone 填入码云的地址,并且选择要存放的本地地址。
    TortoiseGit  clone
  2. 下载文件
    下载文件
  3. 查看文件
    在这里插入图片描述

拉取分支

拉取分支本来应该在下面才对,但是为了展示不同得工具进行代码操作,于是就将这部分内容提前了。

git 命令行拉取分支

  1. 创建本地分支
git branch 分支名
  1. 查看本地分支,*绿色 表示当前分支为master分支
git branch

查看本地分支
3. 将本地分支推到远程仓库

git push origin 分支名
  1. 我在此处执行时报异常,这里大概说:“origin”不存在
    异常
  2. 查询源配置,果然没有设置,在此设置源配置。
#查看源配置
git remote -v

  

 #设置源配置 git@gitee.com:wuyouxin/Git-XueXi.git 为从git上复制得clone路径 
git remote add origin git@gitee.com:wuyouxin/Git-XueXi.git

# 将origin源配置推到 master 上
git push origin master 
  1. 重新执行步骤 3,然后查看远程仓库的分支
git branch -r

  

查看远程仓库

eclipse Git插件拉取分支

  1. 首先我这里在主干master上面上传了一个项目,否则无法导入到eclipse中,也就无法去演示拉取新的分支了。
  2. 右键单击项目 – team – switch To – New Branch
    右键单击项目
  3. 填写分支名,上面master表示从哪啦分支,我这以master拉取分支1.0.2,然后 Finish
    填写分支名
  4. 右键项目 – Team – Push Branch ‘1.0.2’
    Push Branch ‘1.0.2’
  5. 直接 next
    直接 next
  6. 然后 Finish
    然后 Finish
  7. 最后去码云上查看,新分支1.0.2已经被创建。
    去码云上查看

TortoiseGit 拉取分支

  1. 首先进入到 TortoiseGit 目录下 右键 – TortoiseGit – Create Branch
    Create Branch
  2. 给新分支命名 1.0.3
    新分支命名
  3. 切换分支 右键 – TortoiseGit – Switch/Checkout
    切换分支
  4. 将分支切换到 1.0.3
    将分支切换到 1.0.3
  5. 将 1.0.3 push 到远程仓库 右键 – TortoiseGit – push
    将 1.0.3 push 到远程仓库
  6. 提交
    提交
  7. 在远程仓库进行查看
    远程仓库进行查看

切换分支

git 命令行切换分支

git checkout 分支名

从 master 分支 切换到 1.0.1 分支
从 master 分支 切换到 1.0.1 分支

eclipse Git插件切换分支

右键项目 – Team – Switch To – 分支名 就切换完毕
切换分支

TortoiseGit 切换分支

使用 TortoiseGit 切换分支,在上面创建新分支时就有过演示,在此就不做赘述。

上传文件

首先我在最初创建的三个文件夹中加入三个txt文件,分别为 1.0.1.txt,1.0.2.txt,1.0.3.txt

git 命令行上传文件

  1. 查看工作目录和暂存区的状态,发现工作目录中存在1.0.1.txt文件未提交
#查询工作目录和暂存区的状态
git status

查询工作目录和暂存区的状态

  1. 将文件加入暂存区
git add 1.0.1.txt
  1. 再次查看工作目录和暂存区的状态,发现此时工作区没有未提交文件,但是暂存区有未提交的文件。

再次查看工作目录和暂存区
4. 提交

git commit -m '提交1.0.1.txt'

提交

  1. 最后将暂存区内容推送到远程仓库
git push

将暂存区内容推送到远程仓库

  1. 最后去码云上面查看

去码云上面查看

eclipse Git插件上传文件

  1. 将文件提交到暂存区,选择需要提交的文件,右键 – team – add to Index
    将文件提交到暂存区
  2. 提交文件 右键文件 – team – Commit
    提交文件
  3. 写注释 单击 commit and push
    push
  4. 去码云上查看
    在这里插入图片描述

TortoiseGit 上传文件

  1. 将文件提交到缓存区 右键文件 – TortoiseGit – Add
    将文件提交到缓存区
  2. commit文件 右键文件 – Git Commit -> 分支名
    commit文件
  3. 写注释 提交
    写注释
  4. 将文件push到远程仓库 右键 – TortoiseGit – push
    将文件push到远程仓库
  5. push分支
    push分支
  6. 在码云查看
    在这里插入图片描述

下载文件

我在码云上在三个分支中分别加一个文件,来演示下载。

git 命令行下载文件

  1. 下载文件
git pull

下载文件

eclipse Git插件下载文件

右键项目 team – pull
下载文件

TortoiseGit 下载文件

  1. 右键 TortoiseGit – pull
    pull
  2. 选择分支
    选择分支

合并分支

git 命令行合并分支

  1. 首先需要将分支切换到被合的那个分支上(分支往主干上合代码,就需要切换到主干上)
  2. 合并代码
git merge 分支名 

合并代码
3. 我在合并是报一个错误,大概说是因为两个仓库提交历史不一致,无法合并,我这里使用强制合并,在后面加上 --allow-unrelated-histories 最后需要注意的是,有个文件冲突需要解决(如何解决冲突在下面会说到),解决之后可以直接提交代码,提交结束代码合并完毕。
合并是报一个错误

eclipse Git插件合并分支

  1. 首先一样需要将代码切换到要提交的分支上,我这里还是提交到主干上。
  2. 开始合并代码 右键 – Team – Merge
    开始合并代码
  3. 选择要合并的分支 – Merge 这里如果存在冲突,就解决冲突,如果不存在冲突,则合并成功,提交代码即可。
    在这里插入图片描述

TortoiseGit 合并分支

  1. 依旧首先将代码切换到主干
  2. 开始合并 右键 – TortoiseGit – Merge
    开始合并
  3. 选择合并的分支,选择Squash 合并,然后ok。如果有冲突解决冲突,否则合并成功。
    选择合并的分支

删除分支

git 命令行删除分支

  1. 删除远程分支(删除之后可以使用 git branch -r 进行查看)
 git push origin --delete 分支名

删除远程分支

  1. 删除本地分支(删除之后可以使用 git branch 进行查看)
git branch -d 分支名

删除本地分支

eclipse Git插件删除分支

删除本地分支

  1. 删除分支 右键 – Team – Advanced – Delete Branch
    删除分支
  2. 选择要删除的分支 – ok 即可删除
    在这里插入图片描述

删除远程分支

  1. 开始删除 右键 – Team – Remote – Push在这里插入图片描述
  2. next
    next
  3. 选择删除分支 – Add Spec – Finish
    选择删除分支

TortoiseGit 删除分支

  1. 开始删除 TortoiseGit – Switch/Checkout
    开始删除
  2. 选择更多
    选择更多
  3. 选择分支 heads(本地分支),origin(远程分支),然后选择要删除的分支,右键 – Delete branch 删除
    在这里插入图片描述

解决冲突

在主干master 中创建一个一个文件 代码冲突演示.txt,然后三个工具都进行下载。

git 命令行解决冲突

  1. 首先在码云直接修改文件,然后在本地修改文件。
  2. 提交,提交之前pull,报有文件冲突。
    提交
  3. 打开文件<<<<<<< HEAD ======= 之间的代码为本地代码。====== 到 >>>>>> 之间的代码为远程分支代码。将需要的代码保留,提交即可。
    在这里插入图片描述

eclipse Git插件解决冲突

  1. 首先在码云直接修改文件,然后在eclipse修改文件。
  2. 比对代码 右键项目 – Team – Synchronize Workspace
    比对代码
  3. 文件上带有红色双箭头的为存在冲突的代码。左侧为本地代码,右侧为远程代码
    查看冲突
  4. 将远程代码拉到本地
    将远程代码拉到本地
  5. Add to index – Commit – pull
    Add to index -- Commit -- pull
  6. 查看文件 <<<<<<< HEAD ======= 之间的代码为本地代码。====== 到 >>>>>> 之间的代码为远程分支代码。将需要的代码保留,提交即可。
    在这里插入图片描述

TortoiseGit 解决冲突

TortoiseGit 解决冲突其实也大同小异,都是提交代码时发现有冲突,pull远程文件下来修改文件冲突,然后提交即可。

看这里:如果你觉得内容对你有帮助,请动动小手点个好看。关注我,后期内容更精彩,还有海量资源分享哦!

公众号地址

原文地址:https://www.cnblogs.com/wuyx/p/10994100.html