Git 实战(三) | Github 必会高频基础命令与 IDE 的 Git 集成

简介: GitHub 上我们可以 fork 别人的项目,为了与别人产生一种协作关系,将他人的项目在自己本地创建也一个,这里以霍格沃兹测试学院(Hogwarts)的演练环境做演示:1.1) 点击fork按钮对项目进行fork:1.2)fork完成后就可以在我们自己的GitHub账户下见到被fork的项目:2.1)接着我们使用git clone命令将fork的项目clone到本地:这个
更多技术文章分享和免费资料领取
https://qrcode.ceba.ceshiren.com/link?name=article&project_id=qrcode&from=Aliyun&timestamp=1651203635

GitHub 上我们可以 fork 别人的项目,为了与别人产生一种协作关系,将他人的项目在自己本地创建也一个,这里以霍格沃兹测试学院(Hogwarts)的演练环境做演示:

1.1) 点击fork按钮对项目进行fork:

1.2)fork完成后就可以在我们自己的GitHub账户下见到被fork的项目:

2.1)接着我们使用git clone命令将fork的项目clone到本地:

这个时候可以将此项目看做是自己的一个项目,可以任意修改;

2.2)项目的作者可以看到有哪些人fork了自己的项目:

3.1) 先在本地修改README.md文件为:

# Hogwarts_Online2

霍格沃兹测试学院定向班第二期演练
try it
AI 代码解读

3.2)将文件提交到本地仓库:

这个时候可以看到提交的作者已经变成我们自己了;
也可以使用git remote -v命令来查看,可见现在本地仓库与远程仓库直接关联的是fork之后的项目:

3.3)只用git push命令将本地仓库的文件推到远程仓库中去:

如下图可以看到已经成功将修改后的README.md文件推到了GitHub上:

pr:全称 pull request,当我们修改了 fork 后的项目后,因为不能直接修改别人的项目,这个时候想要将自己的修改与原项目合并,就可以使用 pr 来向原项目作者进行申请

4.1)发起 pr,点击 New pull request:

然后我们可以看到仓库路径从我的仓库向原作者项目仓库地址发起 pr 请求,在下面可以看到我对项目的修改 diff:

4.2)这个时候我们点击Create new pull request按钮,填写描述后再点击Create new pull request按钮:

这个时候原仓库维护人员就可以收到pr,并对其进行审核、评论、merge或close的操作:

5.1) 在文件修改没有冲突(conflict)的时候,可以直接merge:

5.2) 当文件修改有冲突的时候,就需要原作者去进行RResolve了:

5.3) 或者有冲突的pr直接close:
总结下来有以下三种情况:

  • 无冲突直接merge
  • 有冲突手工merge
  • 有冲突close并重新发起pr

有时候我们fork了项目,但是很有可能我们对项目的修改会比原项目滞后,这就会导致pr的时候容易出现conflict;为了能让我们知道当前的修改是否conflict,就需要使用git fetch命令了;
使用 git fetch 拿下来一个远程分支的文件,看一下这个分支和我自己的有什么冲突。
7.1)先使用git remote -v命令来查看本地仓库与远程仓库的关联关系

这个时候我们可以增加一个remote,选择原仓库的HTTPS地址,使用git remote add <远端名> <远端地址>命令来添加一个remote:

7.2)再将远程端的master分支fetch到本地:

7.3) 这时候使用git merge将当前master分支与远端分支合并:

结果中我们发现产生了冲突,再使用git status命令查看:

发现两边都修改了README.md,这个时候我们使用vi对README.md进行查看,当我们merge的时候,系统会把文件换成以下的展示模式:

这种展示模式的意思是以等号=为分隔符,等号上方为当前分支的修改,等号下方为远程分支的修改,这样就产生的冲突,我们可以手动进行修改,然后merge:


7.4) 这个时候刷新GitHub,在我们自己的分支仓库中可以看到已经成功将修改进行merge:

这个时候如果再进行pr的话,遇见conflict的几率就会小的多了
命令简单总结:

git remote add other xxxx
git fetch other master
git merge remotes/other/maste
AI 代码解读


8.1)将项目用IDEA打开,在Version Control -> log中可以看到我们的提交管理线:


8.2)双击文件可以查看文件diff:


8.3)在右下角还可以进行Git分支的管理:

点击阅读原文,了解详情。
原文链接

https://qrcode.ceba.ceshiren.com/link?name=article&project_id=qrcode&from=Aliyun&timestamp=1651203635

目录
打赏
0
0
0
0
5
分享
相关文章
git 常用命令
这些只是 Git 命令的一部分,Git 还有许多其他命令和选项,可根据具体需求进行深入学习和使用。熟练掌握这些命令能够帮助你更高效地管理代码版本和协作开发。
Git进阶笔记系列(01)Git核心架构原理 | 常用命令实战集合
通过本文,读者可以深入了解Git的核心概念和实际操作技巧,提升版本管理能力。
【Git】Git 命令参考手册
Git 命令参考手册的扩展部分,包含了从基础操作到高级功能的全面讲解。
62 3
|
2月前
|
[Git]入门及其常用命令
本文介绍了 Git 的基本概念和常用命令,包括配置、分支管理、日志查看、版本回退等。特别讲解了如何部分拉取代码、暂存代码、删除日志等特殊需求的操作。通过实例和图解,帮助读者更好地理解和使用 Git。文章强调了 Git 的细节和注意事项,适合初学者和有一定基础的开发者参考。
67 1
[Git]入门及其常用命令
GIT常用的基础命令
1.起步 用户信息 配置你个人的用户名称和电子邮件地址。这两条配置很重要,每次 Git 提交时都会引用这两条信息,说明是谁提交了更新,所以会随更新内容一起被永久纳入历史记录: gitconfigglobaluser.nameyouname git config --global user.email “12345@example.com” 如果用了 --global 选项,那么更改的配置文件就是位于你用户主目录下的那个(见图1),以后你所有的项目都会默认使用这里配置的用户信息。
1305 0
|
5月前
|
【GIT 第二篇章】GIT常用命令
Git常用命令涵盖初始化、状态管理、提交、分支处理、远程操作等关键流程。`git init`启动本地仓库,`git clone`下载远程仓库。通过`git status`和`git diff`检查工作状态与差异。利用`git add`暂存文件,`git commit`保存更改。借助`git branch`、`git checkout`、`git merge`和`git rebase`管理分支。使用`git fetch`、`git pull`和`git push`同步远程仓库。通过`git reset`、`git revert`和`git checkout`实现版本回退。
85 0
git学习四:常用命令总结,包括创建基本命令,分支操作,合并命令,压缩命令,回溯历史命令,拉取命令
这篇文章是关于Git常用命令的总结,包括初始化配置、基本提交、分支操作、合并、压缩历史、推送和拉取远程仓库等操作的详细说明。
164 1
git学习四:常用命令总结,包括创建基本命令,分支操作,合并命令,压缩命令,回溯历史命令,拉取命令
AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等