学习时,接触到git这个版本控制软件,经常使用到它来管理代码。以下介绍idea如何连接git,怎样把项目提交到github。
使用IDEA操作Github教程目录
一、 Git的相关介绍
简介:介绍git的相关信息。
1.1 Git的信息
git 是一个 开源 的 分布式 版本控制系统。它与 CVS 等集中式版本控制系统不同,git采用了分布式版本库的方式,不需要服务器端的软件就可以进行版本控制。
GitHub是一个开源代码库,可以理解为一个保存源代码的地方。
1.2 Git的特性
从 一般开发者 的角度来看,git的功能特性:
- 可以从服务器上克隆 完整 的Git仓库。
- 可以在 自己 的电脑上根据不同的开发目的,创建分支、修改代码。
- 可以在单机上 自己 创建的分支上提交代码,合并分支。
- 可以把 服务器上最新 的代码拉到 自己的主分支 上合并。
- 修改生成补丁后,可以把补丁推送给主开发者。
- 如果主开发者发现两个 一般开发者 之间 有冲突( 一般开发者之间可以合作解决的冲突),就会要求他们先把冲突解决,再由其中一个人提交;如果 主开发者 可以自己解决,或者 没有冲突 ,就通过一般开发者提交的补丁。
- 一般开发者解决冲突的方法是用 pull命令 解决。
从 主开发者 的角度来看,git的功能特性:
- 可以 查看 (通过邮件或其它方式)一般开发者的提交状态。
- 可以打上补丁,解决冲突(可以直接解决,也可以让开发者之间解决后再提交)。
- 如果开源项目,需要决定哪些补丁有用,哪些没用。
- 向服务器 提交结果 ,再通知所有开发者。
1.3 Git的优缺点
优点:
- 适合 分布式 开发,强调个体。
- 速度快、比较灵活。
- 任意两个 一般开发者之间 可以很容易解决冲突。
- 服务器 的压力和数据量都不会很大。
- 离线 工作。
缺点:
- 学习周期 比较长。
- 中文 资料少。
- 代码的 保密性差 ,一旦开发者把整个库克隆下来,就可以完全公开所有代码和版本的信息。
1.4 Git与集中式的区别
以与SVN的对比为例, Git 与 SVN (集中式)的区别:
- git 把内容按 元数据 的方式存储,而 svn 是按 文件 的方式存储。
- git 没有全局的版本号,而 svn 有。
- git的 内容完整性 比较好(采用 SHA-1哈希算法 存储)。可以确保代码内容的完整性,能确保在遇到磁盘或网络问题时,降低对版本库的破坏。
- 两者的分支不同,对 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 测试,查看是否关联成功,如下图则是 关联成功 (可以看到下载的版本号)
2.3 IDEA提交项目(方法一)
2.3.1 推送项目的过程
如果是 第一次连接 的话,会弹出提示,填写GitHub的 账号 和 密码
创建本地仓库,点击 VCS --> Import into Version Control --> Create Git Repository
选择仓库的地址(根据自己习惯选择),下图是选择在要上传的项目的本地文件夹,点击 ok ,
项目的文件名会显示 红色 ,创建本地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
如果代码有修改,则会出现颜色的提示
2.3.2 检验是否提交成功
从 浏览器 打开 GitHub ,检查是否成功提交到 远程仓库 ,如下图,提交成功(通常都是提交 src 文件就可以的了)
2.4 IDEA提交项目(方法二)
2.4.1 推送过程的演示
(忘了这个操作方法是不是要下载下面这个插件,如果你的idea 没有显示 这个选项,就 下载 这个插件,或者按上面 2.3 的方法操作)
打开 idea ,点击 VCS --> Import into Version Control --> Share Project on GitHub
弹出以下窗口,如下图所示,填入内容,点击 Share
完成后idea右下角出现以下提示
2.4.2 检验是否提交成功
从 浏览器 打开 GitHub ,查看远程仓库是否创建成功,点击远程仓库进入检查项目是否提交成功
三、 连接过程中遇到的问题
3.1 提交项目时报错 提示Push rejected:xxx:push to origin/master was rejected
解决方法: 点击idea底部的 Terminal 打开终端
输入以下命令,告诉系统允许合并与历史不符的内容
git pull origin master --allow-unrelated-histories
如下图所示
命令执行完后,重新push项目就可以了。
好了,继续学习。