1、什么是Git
Git是分布式版本控制系统
Git是一款免费、开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目。
2、集中式版本控制系统(CVS / SVN等)
集中式版本控制系统,版本库是集中存放在中央服务器的,而干活的时候,用的都是自己的电脑,所以要先从中央服务器取得最新的版本,然后开始干活,干完活了,再把自己的活推送给中央服务器。中央服务器就好比是一个图书馆,你要改一本书,必须先从图书馆借出来,然后回到家自己改,改完了,再放回图书馆。所以集中式版本控制系统需要在有网络的情况下才可以工作,有时在网络不通畅的时候可能提交一个10M的文件都需要5分钟,并却当中央服务器坏掉了,那所有人都无法工作。
3、分布式版本控制系统(Git / Mercurial等)
分布式版本控制系统没有“中央服务器”,每一个人的电脑都是一个完整的版本库,我们称为(本地仓储),这样工作时即使没有网络也可以正常工作,因为每个人都是一个版本库,例如你在自己的电脑修改了文件A,你的同事也在他的电脑修改了文件A,这时你们俩之间把各自修改的文件推送给对方就可以看到对方的修改了。
但在实际运用时,一般会有一个服务器充当中央仓库,但这台服务器的作用仅仅时方便大家交换修改,当这台服务器坏掉了,或者自己的电脑坏掉了,可以直接从同事的本地仓储copy一份即可。
Git的优势不只是不必联网,Git还有强大的分支管理。
第一部分: 安装
1. 下载地址:
https://git-scm.com/download/win
如果速度慢, 使用 迅雷下载;
2. 点击安装, 然后下一步, 直到下面这个页面:
建议: 按照上面所示方式选中复选框 ;
3. 点击下一步, 直到出现这个页面:
建议: 这个页面是选择git使用的命令行, 建议使用第一个git自带的;
4. 点击下一步, 直到出现下面这个页面:
建议: 这个是选择行结束符, windows与linux行结束符不一致; 建议选择第一个, 这样git会自动转换;
5. 点击下一步, 直到出现下面这个页面:
建议: 选择命名行窗口, 建议第一个;
6. 点击下一步, 直到出现下面这个页面:
建议: 是否开启文件缓存, 选第一个; 点击install;
7. 安装成功后: 击桌面上的git快捷方式打开命名行, 运行git命名, 出现如下界面则成功:
1. 生成SSH秘钥对:
命名行运行 : ssh-keygen -t rsa -C "你的邮箱地址";
2. 输入你的秘钥密码:
3. 找到这个文件:用记事本打开, 然后复制内容
4. 进入git, 从这里打开信息设置页面: 在这里添加生成的秘钥;
1.命令行运行以下指令:
git config --global user.name "你的用户名"
git config --global user.email "你的邮箱"
1. 配置git路径
2.新建一个项目: TestGit, src下创建一个HelloWorld.java文件,
项目路径:C:\Users\Administrator\Desktop\code\TestGit
3. 打开github, 新建仓库TestGit;
2. 打开项目所在文件夹, 在文件夹上右键运行: git bash here
3. 命名行依次运行以下命名:
git init
git add src
git commit -m "first commit"
git remote add origin https://github.com/mw138/TestGit.git
git push -u origin master
4. 如果不出错误提示输入用户名, 密码:
5. 输入用户名密码后,开始提交,出现下面提示则成功
6. 打开github验证: 可以看出确实提交上去了
7. 至此, 该项目已经加入到了github的版本控制, 在idea上可以进行提交和更新了;
新建一个Test文件, 然后提交到版本库, 步骤如下:
idea上: vcs --> git --> push
注意事项:
1.如果第一次使用git, idea会提示输入github用户名, 密码;
2.如果出现提示 提示没有本地分支, 运行以下命名:
git branch --set-upstream master origin/master
至此: IDEA 大功告成!!!
eclipse的git插件安装与配置
1 git插件安装
2 git插件卸载
3 配置git插件
从git云端下载项目到本地
修改并提交自己的代码到云端
1 把修改好的文件上传到本地仓库
2 pull一下
3 提交代码到云端
31 简易方法直接上传到master分支
32 或者上传分支
小技巧
1 如何恢复未提交的修改文件
2 查看提交记录
3 更新项目远程仓库
1. eclipse的git插件安装与配置
1.1 git插件安装
新版本的eclipse已经自带了GIt了,就不用安装了。
老版本的eclipse安装Git,和安装一般插件过程一样:
点击help——Install new software
在弹出的框里面,输入git下载地址:http://download.eclipse.org/egit/updates/
点击ok,如果没反应,请点击Add前面小三角,找到刚创建的以git为名字的项,稍等一会儿,出现这个框
name下面2项勾选起来,点击next,进入安装了。安装好后,会重启eclipse,安装完成
1.2 git插件卸载
如果不想要git插件了,或者想重新安装,可以先卸载GIT:
在Eclipse中依次点击菜单”Help”->”About Eclipse”。弹出图1所示对话框,点击”Installation Details”按钮,弹出图2所示对话框。选中要卸载的插件(按住Ctrl可多选),点击”Uninstall…”按钮。
Adt——about adt,如图
点击Installation Details
弹出下面框,在里面找到相应的插件进行卸载
选择好需要卸载的插件后,点击Uninstall,进行卸载。ctrl+鼠标左键可以多选哈
1.3 配置git插件
安装好后,进行,一个简单配置,填入我们的用户名和邮箱
点击Preferences》Team》Git>Configuration
点击Add Entry,在弹出框里面输入key和value的值
名字的key :user.name ; value:是你的github用户名。
邮箱的key:user.email ; value:你的登陆GitHub邮箱账号.
以后你使用git提交代码时候,eclipse会自动提取这些信息,和代码一起发送到git远程仓库。
2. 从git云端下载项目到本地
创建github账户,并new一个新的库repository,点击clone ,记住克隆的地址(.git结尾的网址),如下图。(或者找到你想复制的别人的库,点击clone并记住库的克隆地址。)
从Eclipse中选择File-》import-》Git-》Projects from Git
选择next-》选择URI
选择next,粘贴如下信息(注意填上您在github上申请的账号密码):
选择next,进入分支选择,这里选择的是master
如果是大型项目,可能会有多个分支,选择master即可。
选择next,配置本地项目存放路径,一般是c:/你的userName/git
单击Finish,然后选择Import existing projects,然后再单击Finish即可在Eclipse中看到导入的项目了。(项目复制到了eclipse的工作空间中)
这里选择Import existing projects可能会出现一个问题:就==是系统提示.project文件已存在==。
解决办法:先后退一步;然后进入c:/你的userName/git下载的项目文件夹中,把原项目的.project文件删除(没关系,这个文件不重要),然后再点击Finish
3. 修改并提交自己的代码到云端
上面把项目下载并导入到到了本地,自己肯定要修改一下,或者加上一些自己的代码。那么修改好之后怎么发布回GitHub云呢?
3.1 把修改好的文件上传到本地仓库
即:把你在eclipse-workspace的项目,提交到C:/../Git/项目 中去。
点击项目右键>team>commit
在注释中输入提交信息:记录一下修改了哪些文件/为啥修改;方便以后查阅。
勾选你需要提交的文件(确定修改的文件),或者右边小勾,点击全选。
执行commit ,提交到本地仓库。这样你的修改就在本地仓库确认了。接下来我们把本地项目提交至远程远程仓库github上。
3.2 pull一下
把本地项目提交至远程远程仓库github上之前,我们首先要pull一下,表示从云端拉取最新的版本。
防止在你修改的过程中,云端代码有变化(别人修改)。
右键点击项目 -> team -> pull
1
3.3 提交代码到云端
在本地修改好文件,并在本地仓库确认后,就可以把代码上传到云端。有两种办法:
3.3.1 简易方法:直接上传到master分支
右键点击项目 -> team -> push Branch master
next 最后点击finish即可。
3.3.2 或者上传分支
右键点击项目 -> team -> Remot->Push
进行如下设置:
最后点击finish
4. 小技巧
4.1 如何恢复未提交的修改文件:
有的时候,我修改了代码,但是觉得改的不好,想恢复原装,只需要Replace With–HEAD Revision (命令行为 git checkout head .):
Team–Show in History (命令行为:git log)
4.3 更新项目远程仓库:
Team– Pull (命令行:git pull https://github.com/someone/xxx.git)
至此:Eclipse 大功告成!!!