如何在IDEA上操作GitHub?在这里总结了

举报
烟雨江南 发表于 2021/04/28 12:45:11 2021/04/28
【摘要】 介绍如何在IDEA上操作Github(在PyCharm上的操作同理)。

学习时,接触到git这个版本控制软件,经常使用到它来管理代码。Git是现在比较流行的版本控制系统,IDEA也是平时开发中常用的ide,以下介绍idea如何连接git、怎样把项目提交到github等操作方法。

 

一、 Git的相关介绍

简介:介绍git的相关信息。

1.1 Git的信息

git 是一个 开源 的 分布式 版本控制系统。它与 CVS 等集中式版本控制系统不同,git采用了分布式版本库的方式,不需要服务器端的软件就可以进行版本控制。

GitHub是一个开源代码库,可以理解为一个保存源代码的地方。

1.2 Git的特性

一般开发者 的角度来看,git的功能特性:

  1. 可以从服务器上克隆 完整 的Git仓库。
  2. 可以在 自己 的电脑上根据不同的开发目的,创建分支、修改代码。
  3. 可以在单机上 自己 创建的分支上提交代码,合并分支。
  4. 可以把 服务器上最新 的代码拉到 自己的主分支 上合并。
  5. 修改生成补丁后,可以把补丁推送给主开发者。
  6. 如果主开发者发现两个 一般开发者 之间 有冲突( 一般开发者之间可以合作解决的冲突),就会要求他们先把冲突解决,再由其中一个人提交;如果 主开发者 可以自己解决,或者 没有冲突 ,就通过一般开发者提交的补丁。
  7. 一般开发者解决冲突的方法是用 pull命令 解决。

主开发者 的角度来看,git的功能特性:

  1. 可以 查看 (通过邮件或其它方式)一般开发者的提交状态。
  2. 可以打上补丁,解决冲突(可以直接解决,也可以让开发者之间解决后再提交)。
  3. 如果开源项目,需要决定哪些补丁有用,哪些没用。
  4. 向服务器 提交结果 ,再通知所有开发者。

1.3 Git的优缺点

优点:

  1. 适合 分布式 开发,强调个体。
  2. 速度快、比较灵活。
  3. 任意两个 一般开发者之间 可以很容易解决冲突。
  4. 服务器 的压力和数据量都不会很大。
  5. 离线 工作。

缺点:

  1. 学习周期 比较长。
  2. 中文 资料少。
  3. 代码的 保密性差 ,一旦开发者把整个库克隆下来,就可以完全公开所有代码和版本的信息。

1.4 Git与集中式的区别

以与SVN的对比为例, GitSVN (集中式)的区别:

  1. git 把内容按 元数据 的方式存储,而 svn 是按 文件 的方式存储。
  2. git 没有全局的版本号,而 svn 有。
  3. git的 内容完整性 比较好(采用 SHA-1哈希算法 存储)。可以确保代码内容的完整性,能确保在遇到磁盘或网络问题时,降低对版本库的破坏。
  4. 两者的分支不同,对 svn 来说,分支只是版本库的另一个目录。

二、 IDEA连接Git

简介:介绍idea如何连接git,在idea中使用git进行版本控制。

2.1 连接前的准备

2.1.1 安装Git客户端

在idea使用git进行版本控制之前,需要本机有 git客户端 ,如果没有,可按以下操作安装。

在git官网下载电脑系统相应客户端 :Git官网

打开官网后,根据自己电脑系统下载对应的客户端,也可以选择其它的版本下载
在这里插入图片描述
下载完成后,再验证下是否安装成功。

2.1.2 Git客户端验证

打开终端 (快捷键: Win + r ,输入 cmd

在这里插入图片描述
在终端输入命令 git --version 检验

git --version

在这里插入图片描述
git安装成功。

2.2 IDEA关联GIt

打开idea,再打开idea的设置界面 File --> Settings (或 快捷键:ctrl + alt + s

在这里插入图片描述

找到 Git ,如下图所示,默认 自动 与关联git 的

在这里插入图片描述

如果 没有关联 ,则找到git安装目录下的 git.exe 文件(如果自动关联了,就跳过这一步)
在这里插入图片描述

点击 Test 测试,查看是否关联成功,如下图则是 关联成功 (可以看到下载的版本号)

在这里插入图片描述

三、 IDEA推送项目

3.1 IDEA提交项目(方法一)

3.1.1 推送项目的过程

打开 设置 ,点击 Version Control --> GitHub

在这里插入图片描述
点击右侧的 +
在这里插入图片描述

如果是 第一次连接 或者 删掉了之前的信息 的话,会弹出提示,填写GitHub的 账号密码

在这里插入图片描述

添加成功后,会显示 用户账号 ,点击 Apply --> OK

在这里插入图片描述

创建本地仓库,点击 VCS --> Import into Version Control --> Create Git Repository

在这里插入图片描述

选择仓库的地址,一般选择当前项目做为仓库目录,点击 ok ( 将本地地址与git关联后,本地仓库的地址默认就是项目的地址)

在这里插入图片描述

项目的文件名会显示 红色 ,创建本地git仓库成功

在这里插入图片描述

打开项目相应位置的文件夹,可以看到 .git 文件 (相对于其他文件夹,该文件夹有些暗)
在这里插入图片描述

点击需要提交的文件,再点击 VCS --> Commit ,或者按 快捷键 ctrl + k

在这里插入图片描述

打开后可以看到 需要提交的内容 (通常是只选择需要提交的代码,即 src文件 ,其他文件不勾选),以及 内容的注释 (一般都写上内容的描述,方便后续的管理,可以知道提交的原因) ,再点击 Commit

在这里插入图片描述
将本地项目提交到github上,点击 VCS --> Git --> Remotes

在这里插入图片描述

弹出以下窗口,如果 想提交到的远程仓库地址 ,直接点击相应的地址,如果 没有 ,则在该窗口右上角点击的 + 号,添加远程仓库的地址

在这里插入图片描述
URL 这一栏添加远程仓库的地址
在这里插入图片描述
查找远程仓库地址 按这个操作, 打开 浏览器 , 选择指定的远程仓库(想提交到的远程仓库),进入后如下图,点击 Clone or download
在这里插入图片描述
选择 SSH 访问链接(或者 HTTPS ,推荐选择ssh),复制远程仓库地址

在这里插入图片描述

接着,在idea点击 VCS --> Git --> Push (或者按快捷键: ctrl + shift + k

在这里插入图片描述

点击后,可以看到上面几步操作中,选择提交的项目和这次提交的描述,点击 Push

在这里插入图片描述
提交完成,右下角弹出提示 Push successful

在这里插入图片描述

如果代码有修改,则会出现颜色的提示

在这里插入图片描述

3.1.2 检验是否提交成功

浏览器 打开 GitHub ,检查是否成功提交到 远程仓库 ,如下图,提交成功(通常都是提交 src 文件就可以的了)

在这里插入图片描述

3.2 IDEA提交项目(方法二)

简介:这个推送方法,是在推送项目的 同时 ,也在Github上面创建一个远程仓库,不用事先创建远程仓库(用哪个方法,根据自己的情况选择)。

3.2.1 推送过程的演示

(忘了这个操作方法是不是要下载下面这个插件,如果你的idea 没有显示 这个选项,就 下载 这个插件,或者按上面 2.3 的方法操作)

打开 idea ,点击 VCS --> Import into Version Control --> Share Project on GitHub

在这里插入图片描述

弹出以下窗口,如下图所示,填入内容,点击 Share

在这里插入图片描述

完成后idea右下角出现以下提示

在这里插入图片描述

3.2.2 检验是否提交成功

浏览器 打开 GitHub ,查看远程仓库是否创建成功,点击远程仓库进入检查项目是否提交成功

在这里插入图片描述

四、 IDEA克隆远程仓库

在idea选择项目的界面(如果已经打开项目了,点击 File --> Close Project ,关闭项目,退回到选择项目的界面),点击 Check out from Version Control
在这里插入图片描述
点击 Git

在这里插入图片描述
点击后如下图所示,填上 远程仓库地址 、修改 存放的路径 (根据自己情况修改),完成后点击 Test 测试一下

在这里插入图片描述
如果不熟悉 复制远程仓库地址 等操作的话,可以参考这篇文章:码云Gitee的使用教程,Github的操作和Gitee是相似的。

测试完成后,如下所示
在这里插入图片描述

点击 Clone ,克隆完成后会弹出以下提示

在这里插入图片描述
点击 Yes 后,要把项目导入到idea,基本都是直接点击Next 就可以了。
导入操作步骤可以参考这篇文章:IDEA导入打开克隆的仓库

另外就是,这个克隆操作是根据远程仓库的 URL 克隆的,会把远程仓库的所有内容都克隆下来。

五、 IDEA拉取远程仓库代码到本地并自动合并

5.1 Pull作用的描述

这里与第四部分是不一样的,区别在于:

  1. Clone (克隆)是 本地没有 这个项目,从远程仓库克隆一个完整的项目到本地。
  2. Pull 是本地已经有一个项目了,比如这个项目叫做test ,这个test也在远程仓库上面,其他开发者对test进行修改并上传到远程仓库后,我们从远程仓库上把其他开发者修改的部分Pull到本地仓库,将test项目自动合并。

5.2 Pull的操作过程

点击上方菜单栏 VCS --> Git --> Pull

在这里插入图片描述
或者 右键项目名,点击 Git --> Repository --> Pull

在这里插入图片描述
点击后弹出以下窗口,根据自己的情况选择就可以了

在这里插入图片描述

六、 连接过程中遇到的问题

6.1 提交项目时报错 提示Push rejected:xxx:push to origin/master was rejected

在这里插入图片描述
解决方法: 点击idea底部的 Terminal 打开终端
在这里插入图片描述
输入以下命令,告诉系统允许合并与历史不符的内容

git pull origin master --allow-unrelated-histories

如下图所示
在这里插入图片描述
命令执行完后,重新push项目就可以了。

也可以用下面这个命令强推

git push -u origin master -f

至此,介绍结束。


文章来源: https://blog.csdn.net/qq_45069279 ,作者:苜苜的烂笔头,版权归原作者所有,如需转载,请联系作者。

原文链接:https://blog.csdn.net/qq_45069279/article/details/106241564

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。