老九学堂被老九军们称为“全国最大同性程序员交友平台”,而有一个网站被称为“全世界最大同性程序员交友网站”,那就是Github。
相信就算是初学编程的小伙伴应该也听说过Github吧,在Github上,我们甚至能看到世界上最牛的程序员敲的代码。
而且很多企业在招聘时,都会要求小伙伴是使用Github的,可想而知,对于程序员而言Github有多重要了吧!
大雄在某招聘网站随手一搜
![4a4b2eba02fd2866fa50dc0eb2231f80.png](https://i-blog.csdnimg.cn/blog_migrate/91201597647cba29fdb5bfc3658b9c76.jpeg)
![90068c72cb6df24ad4822d38f02bd278.png](https://i-blog.csdnimg.cn/blog_migrate/acfb3c3240fa64c9b2f1066a64f17a19.jpeg)
![9a310ba8c3e84a02c6ee68021db41805.png](https://i-blog.csdnimg.cn/blog_migrate/bae5a720c4de888a49c9178f9d584a3b.jpeg)
今天大雄给小伙伴们带来的这篇文章,主要是通过Eclipse GIT插件来进行讲解,大家会用以后,以后就可以通过互联网的方式来组建团队啦。
Git是什么?
Git是目前世界上最先进的分布式版本控制系统。
Git有哪些优点?
1、适合分布式开发,每一个个体都可以作为服务器,每一次clone就是从服务器上pull到了所有的内容,包括版本信息。
2、公共服务器压力和数据量都不会太大。
3、速度快、灵活,分支之间可以任意切换。
4、任意两个开发者之间可以很容易地解决冲突,并且单机上就可以进行分支合并。
5、离线工作,不影响本地代码编写,等有网络连接以后可以再上传代码,并且在本地可以根据不同的需要,本地新建自己的分支。
现在我们就来整理一下关于在windows系统下面构建Git开发环境吧。首先我们列举一下需要准备的工具
– Git客户端工具:Git For Windows
– GUI客户端工具:TortoiseGit
– Eclipse IDE 2019‑06
– GitHub账号
# 安装Git客户端
Git客户端是我们操作Git核心,其他工具都需要依赖它执行相应的命令,所以要使用Git我们必须安装Git客户端,我们可以在Git官网下载最新的Git客户端。
前往软件下载页面
![99a98ea04bffa5bc7c6860babeeb4117.png](https://i-blog.csdnimg.cn/blog_migrate/094794399bb3102913198fa759ee9201.jpeg)
下面我们来看一下它的安装步骤,首先双击安装包后,我们可以看到启动界面
![502cb570dbe2e4317b97747ca563d496.png](https://i-blog.csdnimg.cn/blog_migrate/14d92af58788314f3eae0d9efb0d887e.jpeg)
点击“Next”,进入选择安装路径界面
![b9a133c8f3117a6705502092e140082e.png](https://i-blog.csdnimg.cn/blog_migrate/d6d826a3451d95e3b4b13b5214750735.jpeg)
点击“Next”,进入选择组件界面,按照下图选择安装的组件
![a222223d27c8b0859cf9ec6c3073358e.png](https://i-blog.csdnimg.cn/blog_migrate/f7dc27d728cc419f1ae7643a406818e3.jpeg)
点击“Next”,进入设定开始菜单组界面,这个界面我们做任何调整
![244f8790f2d0b3d75c974e2c5e127a22.png](https://i-blog.csdnimg.cn/blog_migrate/01519287b4613b65d85f66d332557a5a.jpeg)
点击“Next”,进入选择默认编辑器界面,这里我们使用Notepad++
![19d7b8a61f1f176ef92a24805f0f5e59.png](https://i-blog.csdnimg.cn/blog_migrate/fb0d889ae44f61cef818b16662fe36dd.jpeg)
点击“Next”,进入环境变量设置界面,这里我们使用默认配置
![724ffa1ee8a1a59459fa5aadf22507f3.png](https://i-blog.csdnimg.cn/blog_migrate/6e60bf44df0518f4ac477ed936c2c7ce.jpeg)
点击“Next”,进入传输协议选择界面,我们选择第一个选项
![5476dab070673a70f73d6a3d552fdecb.png](https://i-blog.csdnimg.cn/blog_migrate/d6e28aa13c69734c9eae2512c1ade7f8.jpeg)
点击“Next”,进入配置Git处理文件结尾的方式,我们使用默认设置
![5924aa7da04e388f71b70171e47d721d.png](https://i-blog.csdnimg.cn/blog_migrate/ebea36bffee9df856526fa28d7a34e7b.jpeg)
点击“Next”,进入配置终端使用的模拟器类型,我们使用Mintty
![f34e00ba2bf919fb55dcf86b7d50ad96.png](https://i-blog.csdnimg.cn/blog_migrate/578643fa29817fa9fce89625eefa233a.jpeg)
点击“Next”,进入扩展项配置界面,我们使用默认配置即可
![e05d3eba274dd3fd029f98b9fa78b926.png](https://i-blog.csdnimg.cn/blog_migrate/ed69441b68cb953819e13cb6756755e0.jpeg)
点击“Next”,进入安装过程界面,安装完成后,可以看到安装接收界面
![7c17511667d3692c98a94705502d32af.png](https://i-blog.csdnimg.cn/blog_migrate/e9024d4bc6b35b4cc6b6c602d780aab1.jpeg)
点击“Finish”,此时会打开一个Git终端,到此git客户端安装完成,喜欢使用命令行的小伙伴,可以在终端上完成Git相关操作了
安装TortoiseGit
如果完全使用命令行操作Git势必影响我们的操作效率,而且应对复杂的操作,比如解决冲突,非常困难。很幸运的是在互联网上提供了许多GUI工具,当然Git客户端也自带有UI工具,但是不怎么好用。在这里我们选择使用TortoiseGit这一款GUI工具,非常好用,而且使用过TortoiseSVN的小伙伴一定会钟情于它。
前往软件下载页面
下载这个工具,我们需要下载两个安装包,一个是工具基础包、一个语言包。
当然如果你的英文OK,就可以不用在安装语言包了,下图显示了我们需要下载软件包
![a3e5c146a06968714041afd7948e2e96.png](https://i-blog.csdnimg.cn/blog_migrate/ec28a7320b890403dcd273c8606a5df3.jpeg)
下面是它的安装过程截图,我们的安装顺序是先安装核心软件包,再安装语言包
![c16be550bc32c8fd9493370d0a67b7db.png](https://i-blog.csdnimg.cn/blog_migrate/1e7979ac91c976d833351e1d6ae02440.jpeg)
![fff21cacefddf7c7b7ee62f94106c99a.png](https://i-blog.csdnimg.cn/blog_migrate/5d92e62e37e9babc1df2f079af254c23.jpeg)
![cdadd590657ac4e6fae4a1c9191bcad4.png](https://i-blog.csdnimg.cn/blog_migrate/c8746a05eef14bc8a26159c795724dfe.jpeg)
下面是语言包安装完成的截图
![7cdfd950f1dd08f4483b34b77327b8b4.png](https://i-blog.csdnimg.cn/blog_migrate/b8c0aaf117fded973d2ca348e8380088.jpeg)
下面我们来演示一下如何从GitHub中clone一个git仓库
1 登录GitHub,登录地址
2 搜索JavaBase这个项目
![c0c5af433595697aee0f5762ed66b79a.png](https://i-blog.csdnimg.cn/blog_migrate/c0259e0ff902ca5ab9c45678f5ebeccd.jpeg)
或者直接定位到 https://github.com/ljxt-ExtremeAcademy/JavaBase
3 fork JavaBase项目
![5476dab070673a70f73d6a3d552fdecb.png](https://i-blog.csdnimg.cn/blog_migrate/d6e28aa13c69734c9eae2512c1ade7f8.jpeg)
4 获取clone地址
![bf0e3fe07cea03bdf5c3c49650aac802.png](https://i-blog.csdnimg.cn/blog_migrate/f39bd41d4d2573eed1cb65fbd1153a81.jpeg)
5 pull JavaBase项目到本地
首先我们在本地磁盘中新建一个文件夹用于存放所有的git仓库文件,然后使用TortoiseGit工具clone远程仓库,操作方式如图所示
![ed12ccf9f064fff8162682bce921cc2d.png](https://i-blog.csdnimg.cn/blog_migrate/3401a0bfee4dbdc13a53e2add6734ea6.jpeg)
在打开的clone窗口中,输入远程仓库的地址
![ee5050d903b5f6134d0752308a6de61f.png](https://i-blog.csdnimg.cn/blog_migrate/acd388f0f76e8ab215d96597649ef549.jpeg)
点击“确认”按钮,开始clone
![d4a1ba5bc87a0e4b78c3529066595f50.png](https://i-blog.csdnimg.cn/blog_migrate/64af3a1a3f6fa320d7e7c2699e1254d8.jpeg)
等待clone完成后我们就可以进入目录查看相关内容了
GitHub中创建自己的仓库
通过前面的步骤我们已经可以实现clone GitHub上的开源项目了,但是我们需要使用GitHub来搭建一个提供给自己团队开发的仓库。
此时我们就需要在GitHub创建一个仓库了,下面是创建的步骤。
首先在浏览器的窗口的右上角,我们可以找到创建仓库的入口
![7ec40bb2216d88806277592fae9631d6.png](https://i-blog.csdnimg.cn/blog_migrate/24bd338a48e5f28a5e7d96e204c0390d.jpeg)
打开创建仓库页面,然后输入仓库名称,选中ReadMe选项
![c3f18020035fe84192ea203a8c9d73be.png](https://i-blog.csdnimg.cn/blog_migrate/8ed58ae6be59ce6889c4c2b1f594f447.jpeg)
当然在这里我们使用的公有仓库,它是免费的,如果需要创建私有仓库,需要完成相应的付费操作。
在Eclipse中导入本地仓库
首先讲解本地导入的步骤
1 首先使用TortoiseGit工具将刚才建立的空仓库clone到本地
2 打开Eclipse配置Git用户
打开Eclipse首选项菜单,然后找到git的配置节点,点击Add Entry,添加两个Key
![1b9175d06010f03280c904662199b758.png](https://i-blog.csdnimg.cn/blog_migrate/fef4eac73bd4fb410ef2f0ccc34e5fa3.jpeg)
![824ef62d3079377899ee5f72a4a20199.png](https://i-blog.csdnimg.cn/blog_migrate/4abd0ee8c76784a3e06e3a51c1f13421.jpeg)
添加完成后
![e8bc73283f95feeef09fc5e1e3be85eb.png](https://i-blog.csdnimg.cn/blog_migrate/16e23bf21b23fd7c4a2ff3197771e54d.jpeg)
3 使用Eclipse向导初始化仓库
选择File->Improt打开导入向导界面,选择Git
![bb4a59ccb3bff76ee6642559419fc2cb.png](https://i-blog.csdnimg.cn/blog_migrate/6033b4e3f864db77b3653df349759dab.jpeg)
选择“Next”,进入资源类型选择页面,我们选择本地仓库
![1eb37de95b6bc4fdd577f2a2bf37d70b.png](https://i-blog.csdnimg.cn/blog_migrate/bdcb9cec00f819a8ca2d347bb84ccba7.jpeg)
选择“Next”,选择刚才clone的仓库所在位置
![ccf0d113e6837c2861b51de0626c4a69.png](https://i-blog.csdnimg.cn/blog_migrate/6b6ea645485cae50acf1cb1f73427a6f.jpeg)
选择“Next”,进入项目向导选择界面,我们选择最后一个选项
![5c504c7aecaaeeb84860d29d8b3c1efc.png](https://i-blog.csdnimg.cn/blog_migrate/36b671b7dbe96fa8614719513dc52d61.jpeg)
导入完成后我们设置项目类型,将普通项目转换成Java项目
![7d50a8dbe3a83e314656739084dd7d36.png](https://i-blog.csdnimg.cn/blog_migrate/56ac27c6a1495a77790124f0b0a992be.jpeg)
![7cbb0defc9799cf98b8b7a42ce4aa77b.png](https://i-blog.csdnimg.cn/blog_migrate/31cbe46a1947d81fc9f186b11b36d76f.jpeg)
转换完成后,我们可以看到当前项目的结构和Java项目结构已经一致了
![731b15bc16f8ae850952adeaa8341078.png](https://i-blog.csdnimg.cn/blog_migrate/b244345277b13f3a80bfbe65bd01ae99.jpeg)
4 提交修改到GitHub中心仓库
在项目根目录中鼠标右键中选择->Team->Add to Index,这样就可以把所有文件添加到待提交列表了
![8128ed4a2721f928d1e71ebe5b914559.png](https://i-blog.csdnimg.cn/blog_migrate/59154a870f689bfdf726f0ebea86f41b.jpeg)
然后我们提交待提交列表到本地仓库,并push到中心仓库
在项目根目录中鼠标右键选择->Team->Commit,打开提交信息界面。
![97186205af3842007c743873d897fa94.png](https://i-blog.csdnimg.cn/blog_migrate/89a4f67a72f579be0ae17df040624b7f.jpeg)
输入提交日志,然后点击“Commit and Push”按钮,完成提交,当然此时提交会提示我们输入GitHub的账号和密码
![d958948a008d6b5d19edd23fb924b159.png](https://i-blog.csdnimg.cn/blog_migrate/b821fdf4092cd61b7dfb48edc36dc9c1.jpeg)
提交完成后我们可以在GitHub查看刚提交的文件了
其他成员pull刚才提交的项目
1 在Eclipse中设置用户信息
(当然刚才已经配置了,如果没有配置需要手动配置)
2 搜索组长创建的项目
(项目名称:Kenny-JiaoTou/GitTest)
3 在GitHub上fork该项目
4 使用Eclipse导入这个项目
依次选择菜单:Import -> Git -> Projects from Git -> Clone URI,然后打开路径填写界面
![f5e277e787c39f2b501d01f79f5880ef.png](https://i-blog.csdnimg.cn/blog_migrate/20e178fdbdfc5669c652d1a973ed7ec2.jpeg)
输入clone地址,然后输入github的账号和密码,点击“Next”,进入仓库文件保存路径设置界面
![77770619c91a04261239900f894bf9c5.png](https://i-blog.csdnimg.cn/blog_migrate/32cf504b7e27207aa5f87b73559f1686.jpeg)
点击“Next”,此时会自动clone仓库到本地,clone完成后,我们将其导入到Eclipse中
![ee9d7fb12d20c4c5f0210ba8fbd3efb2.png](https://i-blog.csdnimg.cn/blog_migrate/fab3e11c14f5bb09392e7cf23d83ccf1.jpeg)
点击“Next”,按照默认向导执行操作,最后我们可以成功的导入项目
![e5a025146ca42ef89a58aca2555a6567.png](https://i-blog.csdnimg.cn/blog_migrate/ee153e6e70cacf4749dd5961d63d0ad5.jpeg)
导入成功后的项目,我们进行代码修改
![6a70dde8f3381428822452575a199205.png](https://i-blog.csdnimg.cn/blog_migrate/c4680a91a626dcfe46f7ca138b53a00c.jpeg)
5 提交修改代码
我们可以使用Eclipse向导将项目提交到中心仓库
![1579f7aca9913eb01577f2ae3849500d.png](https://i-blog.csdnimg.cn/blog_migrate/40e2e3d82996a856bbc3b132264344f6.jpeg)
由于我们使用的组员账号,所以提交到GitHub上,并没有将代码合并到主项目中,因此需要组员发起push更新申请,在GitHub网站上找到“New pull request”选项,如下图所示:
![7dbb15f39829a00a13b15a1dcfb977ea.png](https://i-blog.csdnimg.cn/blog_migrate/60d949ae0ea0dfda073a427eba55b7c2.jpeg)
点击“New pull request”按钮后,跳转到创建申请确认页面,此时只需点击“Create pull request”按钮,填写日志,然后提交就可以完成申请创建
![8c28bb35bcc494b578fb895ce02b0be2.png](https://i-blog.csdnimg.cn/blog_migrate/ce0357d3be742e04b93b813e38ee3644.jpeg)
申请创建完成后,我们可以发个邮件或发个QQ消息通知组长审核
组长审核pull更新申请
组员创建了更新申请,组长可以在GitHub中看到申请的数量,如下图所示
![349c6776d8df0fdf32aaa42d0792668b.png](https://i-blog.csdnimg.cn/blog_migrate/d60d09a619061b0a16d3ba5e5ac87711.jpeg)
点击“Pull request”,组长可以处理更新申请,比如下面是老九君提交的申请
![c701c610c0f676dd7f28cfe543729d98.png](https://i-blog.csdnimg.cn/blog_migrate/d5e83f24d02b8fce04a0380b9b4f9016.jpeg)
点击申请列表项,就会打开合并确认页面,如下图所示
![a74582169be211646d9e6097b4c72858.png](https://i-blog.csdnimg.cn/blog_migrate/45893e5331b56600210281c41d2d6a7f.jpeg)
点击“Merge pull request”按钮,然后书写日志,提交就可以完成合并处理,同时完成申请处理。
然后我们在来观察项目,就会发现老九君修改的代码了
![020642c0a34b928301858dd62d83e20a.png](https://i-blog.csdnimg.cn/blog_migrate/4e569ecf44d13e541ba1512c4363939f.jpeg)
组长需要再次进入到本地仓库,执行拉取最新仓库修改操作,当然也可以在Eclipse执行pull操作,比如
![ac803422ac1646c8b0b3653bf7aa324f.png](https://i-blog.csdnimg.cn/blog_migrate/dd46adf973ebb5af0384fc25515ad19f.jpeg)
需要更多学习笔记干货的小伙伴、欢迎关注公众号【老九学堂】(づ ̄3 ̄)づ╭❤~