源码版本控制GIT
目标1、什么是GIT
目标2、Git安装与配置
目标3、TortoiseGit安装与配置
目标4、GitHUB帐号申请及相关操作
目标5、Git与TortoiseGit基本操作
目标6、Idea整合GIt操作
1. 什么是Git
Git是一款免费、开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目。
Git 是 Linus Torvalds 为了帮助管理 Linux 内核开发而开发的一个开放源码的版本控制软件。
2. Git相关软件下载
Git的下载页面: https://git-scm.com/downlond
目前最新版:Git-2.13.0 注意下载对应操作系统位数的安装包。
TortoiseGit下载页面: http://download.tortoisegit.org/tgit/
目前最新版:TortoiseGit-2.4.0.2
3. Git安装与配置
3.1 Git安装
1、选中GIT安装包,Git-2.13.0-64-bit.exe 单击右键,弹出对话框,点击【解除锁定】。
2、双击GIT安装包,Git-2.13.0-64-bit.exe 开始安装(如有安全告警,点击运行)
3、出现授权信息页面,点击下一步即可
4、选择安装路径
5、选择文件关联,如果你不清楚,直接默认,下一步即可. 如果你想要右键菜单清爽一点,就把下图中的那个勾给去掉. 这里把所有勾去掉也是可以的,更清爽(我就是这么干的).
6、接着出现开始菜单文件夹,默认,下一步即可:
7、然后是是否配置Path的配置,选择中间一个,可以通过 Windows命令行(CMD)调用 git 命令。 然后点击下一步.
8、选择回车换行的格式。默认即可.(检出时转换为Windows风格,提交时转换为Linux风格.)
9、然后是安装进度界面
10、安装成功
3.2 测试Git是否安装成功
可以在cmd里面测试是否设置了Path,是否安装成功. 在CMD中输入 git 或者 git --version 试试:
如果按照前面的步骤安装下来,那么 git 程序所在的路径已经添加到系统 PATH 中(path就相当于系统自动查找路径列表),所以可以直接在任意路径的 cmd 下执行 git 命令. 如果没有添加,则需要 cd 切换到Git所在的 bin 目录下,才能执行 git 命令。
3.3 配置你自己的昵称与email
设置本地机器默认commit的昵称与Email. 请使用有意义的名字与email.
git config --global user.name "offcn-java"
git config --global user.email "[email protected]"
git config --global push.default simple
如果要使用git进行推送,则必须配置 push.default ,否则推送失败. 姓名与Email只用于日志标识.实际推送到GitHub等在线仓库时,要用有操作权限的账号登录。
查看git配置可以使用 -l 参数(l 就是 list 的首字母,L的小写):
git config -l
在某个项目根路径下面可以设置单独的Email与姓名.
git config user.name "offcn"
git config user.email "[email protected]"
可以看到, 配置单个项目时,少了 --global 参数。
4. GitHUB帐号申请及相关操作
GitHub 是一个面向开源及私有软件项目的托管平台,因为只支持 Git 作为唯一的版本库格式进行托管,故名 GitHub。GitHub 于 2008 年 4 月 10 日正式上线,除了 Git 代码仓库托管及基本的 Web 管理界面以外,还提供了订阅、讨论组、文本渲染、在线文件编辑器、协作图谱(报表)、代码片段分享(Gist)等功能。目前,其注册用户已经超过3500万,托管版本数量也是非常之多,其中不乏知名开源项目 Ruby on Rails、jQuery、python 等。
目前很多大的企业面试开发人员,有的要求面试者在简历上附上GITHUB帐号,辅助审查面试者的能力。
4.1 GitHub帐号申请
4.2 GitHub仓库配置
1、登录 GitHub, 在右上角找到 New Repository 或者 加号下拉按钮(+),点击进入新建仓库页面: https://github.com/new, 如下图所示:
依次填写仓库名,以及其他信息后,点击 "Create repository" 按钮,即可创建一个在线仓库. 因为这个仓库是挂在你的账号下的,所以可以是任意合法的字符,只要和你的其他仓库不冲突即可.
仓库创建成功后,就会进入仓库预览页面, 如下图所示:
然后,我们可以点击右边的 HTTPS 链接, 上方的文本框里面就显示了 HTTPS协议下的仓库访问地址, 可以点击进去全选,也可以点击右边的复制按钮复制到剪贴板. 例如,刚刚创建的项目访问路径是:
https://github.com/offcn-java/first.git
是一个以 https:// 开始,以 .git 结尾的 URL,根据提示,叫做 clone URL.
好了,仓库创建完成,可以进入下一步了。
5. IDEA整合GIT操作
5.1 配置Idea集成Git
5.2 在使用SSH key 创建公钥私钥,上传公钥到github
(1)、点击开始菜单--》所有程序---》git选择 Git Bash
点击进入git命令行:
(2)、输入命令,生成秘 ssh-keygen -t rsa
ssh-keygen -t rsa -C "[email protected]" |
遇到提示直接回车
(3)、查看生成的秘钥
在当前登录用户的 .ssh目录下,即可查看到秘钥
(4)、查看生成的公钥id_rsa.pub内容在GitHub中通过:edit your profile -> ssh key -> Add SSH Key 添加SSH Key, 把上面生成的 public key 拷贝到这里,保存
5.3 配置Idea集成GitHub
(1) 、获取github Token
选择左侧菜单的“Developer settings”一项:
选择“Personal access tokens”:
点击“Generate a personal access token”:
把以下选项全部勾选,然后点击下方绿色按钮,便可生成一个token
Token生成成功
(2)、Idea配置集成GitHub
选择Enter token
出现token输入界面,输入github生成的token,点击 Login In
Github账号绑定Idea成功
5.4 导入本地工程到Github
1、打开一个工程,在idea工具栏选择VCS--->Import into Version Control---->Share Project on GitHub
2、输入项目名称、描述
点击 Share弹出选择分享文件菜单
选择对应的文件,输入提交说明,点击Add按钮,即可提交文件到github
遇到如下提示,点击Cancel
出现如下提示,表示上传本地项目到github成功
点击查看github发布地址
5.5 从GitHub远程仓库下载项目到本地Idea中进行开发
1、打开Idea开始界面,选择Check out from Version Control-->Git
2018Git
Check out from version control -> git
2、打开项目地址,查看git仓库地址
https://github.com/xuexi007/demo001
点击绿色按钮 “Clone or download”,选择Clone with SSH,复制下面的仓库地址。
3、粘贴仓库地址到Idea Url,点击测试
4、出现是否信任Github公钥,点击 yes(2018idea 没有该步骤)
5、再次点击 Test 测试按钮,出现 Connection successful 测试连接成功
6、点击 Clone按钮,开始克隆下载项目
7、下载完成,确认打开项目,点击 yes
8、项目即可成功导入到Idea
5.6 使用Git创建分支、切换分支、发布分支到github
选中项目---》git---->Repository---->Branches...
弹出分支操作菜单,选择 New Branch
输入分支名称
点击Ok创建,并切换到分支
查看Idea右下角,可以看到当前操作分支。
点击,即可出现分支列表,选择对应分支---》Checkout 即可切换回分支。
选中项目---》git---->Repository--》Push
在github即可查看到对应分支已经创建
5.7 使用Git合并分支
修改fenzhi1的一个类,新增一个方法
推送分支代码到Github
切换回Master主分支,选中项目---》git---->Repository--》Merge Changes
弹出合并分支对话框
点击Merge合并分支到Master主分支
5.8 使用Git回退到历史版本
每次提交到git上面,都会有一个记录,每个记录用版本号代替,当你提交错误的时候,你可以根据这个提交的版本好回退到你想要退回的历史记录
然后出现如图:
主要分为三列,第一列和第三列我模糊了,分别代表谁上传的和 你上传提交的注释
第二列是时间,然后点击你想退回的版本那一行,右键出现如图:
然后你就复制了你的历史版本号,然后到idea的右下角,点击
最后确认就可以回退到历史版本.
5.9 解决冲突
当一个用户修改后未push到中央仓库,此时另外的用户提前完成了修改并push到中央仓库,
那当前用户在push就会产生冲突。
冲突解决方法,合并。
点击“Merge”按钮。
根据出现的提示框,选择合并行,点击>> 和 <<合并内容。
点击应用,内容合并完成。
最后在psuh到中央仓库,即可解决版本冲突问题。