git使用攻略Word文档格式.docx
《git使用攻略Word文档格式.docx》由会员分享,可在线阅读,更多相关《git使用攻略Word文档格式.docx(22页珍藏版)》请在冰豆网上搜索。
本人的Eclipse是3.6版本的,正好不能使用上述方式,处理方法如下
打开http:
//wiki.eclipse.org/EGit/FAQ#Where_can_I_find_older_releases_of_EGit.3F
选择http:
//download.eclipse.org/egit/updates-1.3(因为这个版本的发布时间跟Eclipse3.6发布时间相近,其他版本同理试试)
Next到底就OK了。
二、配置EGit
这里有个前提,就是首先电脑上必须安装有git的客户端
安装地址:
安装之后,打开Eclipse
选择git客户端的安装路径,接着在Configuration中配置userSettings的user和email
这个用户名必须是github的用户,还没注册的,点击这里申请
到此,插件的配置结束
非常激动的开始创建一个DEMO试试
File>
Team>
ShareProject选择GIT
这里选中Git的时候,会提示设置HOME环境变量
HOM-->
%USERPROFILE%
接着就创建一个仓库
三、上传工程
首先需要登录github
创建一个空的仓库
点击Createanewrepository
因为我已经创建过一个GitDemo,就不再演示
点击上传
提示exceptioncaughtduringexecutionofls-remotecommand
发现是没有私钥。
这里简单说明下egit的工作原理
事实上,熟悉CVS或则SVN的朋友肯定知道,当我们点击commit的时候,版本管理器会将我们修改的内容进行同步更新
但是egit却没有那么智能,事实上,GIT有个本地仓库的概念,也就是说当我们commit的时候,我们把更新的内容信息
同步到本地仓库,点击push的时候才将本地仓库中的更新内容提交到github
本地仓库路径window-->
showview-->
other-->
GitRepositories
说多了,不知大家有没印象,最早配置EGit的UserSettings的时候之后用户的名称,没有密码
Passwordsaren'
tverysecure,youalreadyknowthis.Ifyouuseonethat'
seasytoremember,it'
seasiertoguessorbrute-force(trymanyoptionsuntiloneworks).Ifyouuseonethat'
srandomit'
shardtoremember,andthusyou'
remoreinclinedtowritethepassworddown.BothoftheseareVeryBadThings™.Thisiswhyyou'
reusingsshkeys.
上述这段话是github给出的解释,通俗点说,github担心用户使用过于简单的密码造成安全隐患,或则是密码过于复杂造成用户难以记住带来的不必要麻烦
因此采用SSHkeys的方式
四、SSH配置
如何生成属于自己的SSHkyes,操作如下
1.打开GitBash
输入ssh-Tgit@
发现没有RSA文件
接着输入
#ssh-Tgit@
提示没有权限。
继续输入
ssh-keygen(一直enter)
上述路径不是唯一的,大家自己把握之前HOME配置的路径
最后测试下
配置SSH2
简单解释下,之前上传的是SSHkeys的公钥,而id_rsa中存放的就是我们的私钥,因此当我们上传(push)的时候只需要
输入公共的账号git即可
举个例子
提交后,就是Push
这里的ui就是我们之前在github创建的仓库地址
niext,点击finish完成push到服务器的操作
到此,EGit的安装配置结束
参考资料:
1.GIT安装配置:
2.如何删除repository(仓库)
3.开始egit的使用:
//wiki.eclipse.org/EGit/User_Guide/Getting_Started
4.更多参考:
//wiki.eclipse.org/EGit/User_Guide#Github_Tutorial
5.EGit与github的简化版本说明:
//gevin.me/182.html
6.关于SSH:
7.关于仓库:
推荐一本参考书:
GIT权威指南
网上非常火的一个教程:
下面是另一个作者的笔记,我也copy下来了,同样感谢
在windows下使用git客户端,github源码库以及eclipse的git插件-egit的使用
在windows下使用git客户端,github源码库以及eclipse的git插件-egit的使用
#{
//v0.1//120314
简单记录
//v0.2//120316
小修改
//v0.25//120317
错别字,病句,排版,段落分段等
//v0.29//120317-2
修正本地代码库的理解错误,增加更专业描述的资源.
}#
这段时间,公司的源码库从svn迁移到了github上,从svn换用git的过程经历了一些曲折.在此先简单记录一下.
关于git与svn
刚开始搞不明白git的区别,以为和svn差不多少,稍微使用了一下才发现区别较大.
svn
首先svn是在远端或者本地建立一个源码数据库,源码和版本变更都记录在其中.本地当前项目下会有隐藏的.svn文件,记录一些当前项目的元信息,以使本地当前项目能和源码数据库中的信息接驳起来.
git
至于git比较特别,首先git会索性要求本地必须有一个源码仓库,把项目元信息也记录其中.有些人在这边可能分不清,因为会看见两种情况,有人会一个项目建立一个源码仓库,有人是用一个集中的源码仓库,一般来说,应该使用后者吧.而提交代码变更,即commit即为向本地源码库提交.然后在远端有一个gitserver,比如github,其实就是另一个源码版本库的所在地.这里会有push,pull的概念,看来git更注重同步的理念.无论你在本地commit多少次,gitserver的源码库是不会变化的,此时你要做的是,将本地源码库和远端源码库同步!
这就是关键所在,你要使用push,将源码库的变更push上去.至于pull,当然是拖下来.这样的好处显而易见,即时没有在网,你也可以随时使用版本控制功能.
但是这里我还有一些不明白的地方,就是多人开发时,不同版本库的同步冲突如何解决,因为实际上比svn多了一步,不知道会不会很麻烦,后续研究.
见补丁--V0.29
在windows&
eclipse上使用git
windows在专业领域不愧为万年二等公民啊,不提也罢,不提也罢--
如何在eclipse里面使用git?
大家肯定知道,既然是eclipse,那么会有一个插件,嗯,这个传说中的插件叫做egit.
貌似现在的eclipse已经自带了这个源,你可以直接搜这个插件,或者手动的从源下载,但是eclipse并没有给这个源一个名字,所以你添加源的话会提示你已经存在.
你可以这样:
1help->
installnewsoftware
2点击最上边的输入框的下面一行的"
AvailableSoftwareSites"
3看见"
typefiltertext"
没有?
输入"
egit"
选定,edit,name咱就填个"
4好,回来,这时候插件源的下拉菜单里应该会有egit了,你选择,然后把那些乱七八糟的都装上吧,你肯定已经干了很多次了.
这里要说一下,这个egit可不是一个gui而已,而是真的包含了可执行命令工具,但是这个东西仍在发展中.....对,会有点儿蛋疼.
装好了吧,现在你在项目上右键单击,然后"
team"
里面的功能就是git的功能了,别和svn管理的项目弄混了哦.
基本的使用方法你可以参照这里:
还有这里:
//www.open-
这个是一系列文章,不过有的稍微过时或者不详细,所以仅供参考,要多思考,不要怕.
比如"
useorcreaterepositoryinparentfolderofproject"
我才不会这样干啦,比如你放到eclipse的workspace里肯定会很乱的.找个地方集中存放我觉得不错.
那个home变量是存放配置文件的目录.
至于你将会遇到"
ref"
"
master"
branch"
神马的,首先,我也没搞太清楚--
但是,ref应该是指项目的引用,比如一个branch也是一个ref,它是一个变量,HEAD就是当前的最后一个进入仓库的项目吧,master,顾名思义吧,也算是一个branch.
以上就是在windows上,eclipseIDE下使用git的基本套路,下面,要与github结合了--
-----------------------------------------------------------------------------------
首先,如果你是从svn迁移,github有一个选项,可以直接从svn库导入.然后,下面:
不要嫌冗余
在github的官方有一个纯命令行git工具使用的教程,就是egit封装的那个玩意,按照这个教程配置.稍微看一下基本命令的使用.
,先看到DownloadandInstallGit这里先.
传输协议与密钥验证
然后我要说一下,貌似git传输默认是使用ssh(通常指ssh2)协议,当然也可以使用其他常见传输协议.而ssh2协议有多种验证方式,密码,密码加证书,或者纯证书,证书就是指非对称加密的密钥啦,自己拿着私钥,把公钥放到server上,然后两边一对,server就知道是你了.
github就是用这种私钥公钥大家来配对的验证方式,当然,也有http协议的,其实是https,但是不知道是不是因为前段时间被攻击,还是第一次上传比较重要,反正我第一次push项目必须要用ssh2的方式,上去后才能看见https方式的链接,也许可以直接使用https.翻墙的同志们可能知道一些ssh2,不过经常跟win打交道不和linux打交道的童鞋可能会陌生,因为win根本就不原生支持ssh2.
所以要在github上上传你的项目,首先,你得有rsa密钥对,嗯,eclipse本身有这个工具,但是...别用,木有hosts文件,坑死爹了,我在这绕了一天啊,对,尼玛还要个hosts文件.所以,前面安装的gitbash有用了.
把后面的看完吧,我来补充,linux下默认的ssh密钥文件貌似是在.ssh文件夹下,win的默认位置是用户目录(别问俺神马叫用户目录--,你打开cmd看看默认路径)的ssh文件夹下,按照官方推荐的做完全套.
其中最重要的是,把生成的密钥,还有hosts文件,拷到当前用户目录的ssh文件夹下.win7和xp的用户目录是不一样的.
我没生成hosts文件之前,直接用egit来push遇到了
"
Warning:
Permanentlyadded'
207.97.227.239'
(RSA)tothelistofknowhosts.
Permissiondenied(publickey)"
这个狗屎问题,搜了很久很久没有确切说法,stackoverflow也看了,都没说清啊,就是因为hosts文件的问题.
......
看到"
...access"
之后谢天谢地吧.
后面的命令行里让你配置user.name神马的东西眼熟吧,和egit里面的类似设置是一个意思.你用文本编辑器直接编辑配置文件都行.
T_T
然后!
!
然后,然后你终于可以在eclipse里面使用egit的push了,先commit再push,如果本地都没货你没东西push上去啊.弹出来账户密码神马的,github版本库的位置会给你个链接,比如"
git@:
xxbirdman/xxProject.git"
这个就是个ssh2的链接,填在第一行URI,后面会帮你填充.协议也不需要你动手.
重点来了:
嗯,童鞋,也许你很聪明,但是绝对记住,下面的账户密码位置虽然只写了个git,但是可别自作多情去填上github的帐号密码,不然你会很痛苦的,比如遇到神马"
Exceptioncaughtduringexecutionofls-remotecommand"
的狗血问题,原因很简单,github采用了纯rsa的验证方式,只要你的私钥配上了公钥,用公共账户git登录即可,绝对不需要画蛇添足的加上帐号密码,那样反而会出错,如果以后使用https的话,那就可以填上帐号密码了,另外记得选上记住密码,然后,跳转,再然后,建议一般人点击"
AddAllBranchesSpec"
吧,然后finish.这里是让你选择,你要同步本地版本库中的哪些branch上去的,每个branch都是个ref嘛,master也是一个branch嘛,HEAD,你懂的,一般人应该是都同步吧--
这里貌似和svn中默认常见整天念叨的branch,trunk,tag有点区别,其实也没有本质区别啦.你把trunk和tag也看成一种branch好了.
对了,小乌龟也有git版,叫TortoiseGit,你懂的.
最后,感谢很多人的分享,大家也可以参考以下链接:
github的帮助
官方文档的中译
git中文魔法书//手册啦,有耐心翻翻
id=dfwthj68_675gz3bw8kj&
pli=1#_1_41281264953870145_601701371_489039059728384
Eclipse上GIT插件EGIT使用手册,这一系列文章真心不错,再推荐一次
这是俺遇到苦逼问题时候看见的一位曾经同样倒霉过的大哥分享的内容T_T
这里有提到eclipse工具生成rsa密钥对的一瞥
//freewind.me/blog/20111114/578.html
本来只想随便写一点点,结果貌似又用了差不多两三个小时,写得有点乱,还不是很详细,命令行的使用也不熟悉,以后有空再补充吧,
多谢分享经验的各位.有错误以及不明白的地方请大家帮忙指出来.
=补=丁=
--V0.29
补充:
这里我对于git本地代码库的理解认识不正确,找了两篇文章,介绍git的理念以及工作方式,供大家参考.说真的,真麻烦啊,我都想爆粗了,头痛ing--#
//www.cong(菊花)//菊花去掉