https://gitchat.csdn.net/activity/5be6c7f30ca0e77081d9ef12?utm_source=so
现任某在线教育公司 Java 高级工程师,擅长 Java 后台相关开发。微信公众号:桌前明月 个人博客:https://blog.csdn.net/ljk126wy
现任某在线教育公司 Java 高级工程师,擅长 Java 后台相关开发。微信公众号:桌前明月 个人博客:https://blog.csdn.net/ljk126wy
...更多
文章
很高兴在 GitChat 上跟大家进行技术交流,目前国内开发人员普遍都开始使用 Git 进行项目的版本管理,如果说你还在使用 SVN 并且对 Git 一无所知的话,我的这个 Chat 将会帮助到你,带你进入 Git 的世界。
本篇 Chat 是零基础入门 Git 的学习教程。文中通过大量的图片操作来演示如何使用 Git。 本次分享内容如下:
- Git 介绍,Git 作用,Git 工作流程
- Windows 环境和 Linux 环境下安装 Git
- GitHub 常用操作
- 码云常用操作
- Git 常用命令操作
- Git 分支命令操作
- 通过命令方式解决代码冲突
- Git 命令配置用户信息
- git merge 和 git rebase 的区别,以及注意事项
- Eclipse 使用 Git 常用操作以及注意事项
- IntelliJ IDEA 使用 Git 常用操作以及注意事项
1.1 Git 的由来
在介绍 Git 之前我们来先说一下 Git 是怎么来的。
Git 的创始人同时也是 Linux 的创始人 Linus。Linus 早期在维护 Liunx 代码一直是人肉合并代码。后期开始采用了分布式版本控制系统 BitKeeper 来进行维护。然而 BitKeeper 由于考虑商业的原因,不再免费提供给 Linux 使用,后来 Linus 就自己开发一个。于是乎就有了后来的 Git。
1.2 Git 的作用
Git 的作用分为 3 块:
Git 不像 SVN 一样,它可以没有中央仓库服务器,每个开发人员都有一个完整的仓库,在开发完毕后在进行互相 Push。当然对于多个人的团队开发 Git 也是有远程仓库方便开发人员快速修改合并代码的。
1.3 Git 的工作流程
Git 的工作区域有 4 个,分别是:
执行操作如下:
2.1 Windows下安装 Git
访问 Git 官网下载 Windows 安装包:
建议下载安装版,进行傻瓜式地“下一步”即可。安装成功后点击桌面鼠标右击显示 2 个 Git 菜单表示安装成功。如下图:
2.2 Linux 下安装 Git
我们这里演示的 Linux 版本:CentOS release 6.4 (Final),通过 root 用户执行 yum install -y git
。
安装成功后输入 git --version
显示 Git 版本信息表示安装成功。
3.1 了解常用单词基本概念
由于 GitHub 是一个英文网站,在了解使用 GitHub 前我们先来介绍一些基础概念:
通过下图操作:
这样就会将示例项目复制我们的 GitHub上,并且该项目是独立存在的。
如果修改了其中 Fork 的 Thymeleaf 示例项目代码。我们也可以向 Thymeleaf 提交修改后的代码。如果 Thymeleaf 同意我们的提交,我们就完成了对官方示例项目的贡献。
3.2 注册 GitHub 帐号
访问官网,点击 Sign in 进行注册。
输入用户名称、邮箱(必须是有效的邮箱)、密码。
填完用户信息之后点击 Create an account。
接下来选择公开的免费版本(收费版本是可以创建私有仓库的)然后再点击 Continue。
点击跳过这一步 skip this step,就注册成功啦。
注册完成后必须验证邮箱我们才可以创建 Git 仓库,点击 start a project 创建一个项目,其实也是创建一个仓库。
一个项目对应一个仓库。
如下图所示就是没有校验邮箱的原因。
登录邮箱,我们会看到 GitHub 给我们发送的邮件。
打开邮件内容然后点击 Verify email address。
它会帮我们再次跳转到 GitHub的创建项目选项页面中,再次点击 start a project。
出现如下图所示表示邮箱校验成功,现在就可以开始创建我们的项目仓库了。
需要注意的是:如过您使用的是 QQ 邮箱,需要设置一下白名单才可以收到邮件。
输入仓库的名称,仓库的描述,然后勾选 Initialize this repository with a README (创建说明文件)。
如下图所示表示项目仓库创建成功!
3.3 项目仓库的基本操作
3.3.1 创建仓库
除了通过 Start a project 来创建仓库,我们还可以通过下图的方式创建仓库。
3.3.2 新建文件
进入仓库主页,点击 Create new file。
输入新建文件的名称加后缀名,再输入文件的内容。
输入提交注释标题和描述,然后点击 Commit new file。
如下图所示创建文件操作演示完毕!
3.3.3 编辑文件
点击 Demo.java。
然后点击下图所示的编辑图标。
修改文件的内容。
点击 Commit changes 提交修改后的文件到仓库中。
3.3.4 删除文件
选择 Demo.java,然后点击如下图所示的删除图标
提交注释是非必填信息可以直接点击 Commit changes 进行提交。
3.3.5 上传文件
点击 Upload files。
点击 choose your files 然后选中要上传的文件 DemoUpload.java。
然后点击 Commit changes 进行提交。
如下图所示上传文件操作演示完毕!
3.3.6 下载和克隆项目
下载项目以 ZIP 压缩包的方式。
通过 GitHub 官方客户端 clone 到本地(需要先安装官方的客户端 GitHub Desktop)。
如果没有下载,会提示你进行下载。
下载完成后进行傻瓜式的安装,安装成功后点击客户端选择 Sign into GitHub.com 进行登录。
然后再次点击 Open in Desktop 弹出如下图所示,点击打开 GitHubDesktop.exe,在 Local path 下的输入框中选择克隆到本地的路径。
如下图所示表示克隆成功。
3.4 删除仓库
进入项目仓库主页然后点击 Settings。
点击 Delete this repository。
然后输入仓库名称点击 I understand the consequences,delete this repository 进行删除。
3.5 创建 Issue
这里的 Issue 演示是在 GitHub 帐号 ljk163wy 和 zhuoqianmingyue 进行。
通过操作 javaapi 项目来演示(该项目是 ljk163wy 帐号创建的) 里面有一个 Demo.java 文件内容如下:
我们这故意将 main 方法改成了 mian 。
我们在 zhuoqianmingyue 帐号下访问 javaapi 项目,也就是下图中红框的地址。
访问后点击 Issues,然后再点击 New issue。
输入 Issue 的标题 和描述,然后点击 Submit new issue。
如果我们觉得 Issue 有问题想取消,可以点击 Close issue 进行关闭,这里不进行关闭的操作。
我们在切回到 ljk163wy 帐号下就看见 Issues 的数量变成了 1。
点击 Issue 的问题。
对提问题的人进行回复。
也可以点击 Close issue 就看不见这个问题了。
我们可以再次查询关闭的 Issue。
如果想打开可以点击Issue 进入后再次点击Reopen 进行打开操作。
3.6 进行 Fork 操作
这里的 Fork 演示是在 GitHub 帐号 ljk163wy 和 zhuoqianmingyue 进行。其中 ljk163wy 帐号下 javaapi 项目中,Demo.java 文件中 main 方法写错了,我们通过 zhuoqianmingyue 将 ljk163wy 的 javaapi 项目 Fork 下来,进行修改后再执行 commit 到本地。然后再 Pull 给 ljk163wy,再将 Pull 代码通过 ljk163wy 将其合并。
切换到 GitHub 帐号 zhuoqianmingyue,然后访问 ljk163wy 帐号的 javaapi项目。点击 Fork。
在 GitHub 帐号 zhuoqianmingyue 将 Demo.java 文件进行修改,然后将文件进行 commit。
点击 Pull requests,然后再点击 New pull request。
点击 Create pull request 进行代码的推送。
输入推送代码描述信息,然后点击 Create pull request。
切换到 ljk163wy 帐号下,我们看到 zhuoqianmingyue Pull 过来的信息。
点击 Pull requests,然后点击推送信息。