设为首页 收藏本站
查看: 1329|回复: 0

[经验分享] eclipse使用git提交项目

[复制链接]

尚未签到

发表于 2018-1-13 07:40:02 | 显示全部楼层 |阅读模式
  转自:http://blog.csdn.net/u014079773/article/details/51595127
  准备工作:
  目的:eclipse使用Git提交本地项目,提交至远程github上
  eclipse版本:eclipse4.5  64位
  jdk版本:jdk-1.7 64位
  项目类型:maven web项目
  备注:eclipse高版本自带git插件,而低版本则需自己安装git插件,这里使用eclipse高版本,低版本安装git插件这里不进行介绍。
  eclipse使用git提交项目有2种方式:一种是git命令窗口,另一种是eclipse自带git插件(跟svn插件一样使用)
  一、使用git命令窗口提交项目
  1.首先官网下载git并安装,然后配置用户信息(任意目录下右击“Git Bash Here”打开git命令窗口)
  git config --global user.name "you name"
  git config --global user.email "you@youdomain.example.com"
  2.登录github官网,注册个人github账号,创建SSH Key 用于将本地项目上传至远程github上
  创建SSH Key:ssh-keygen -t rsa -C "youemail@example.com"
  把生成的公钥复制到github上,具体操作参考:http://blog.csdn.net/u014079773/article/details/49555989  中“六:添加远程仓库”
  3.创建本地仓库如“testGit”,然后选中该本地仓库右击“Git Bash Here” 执行如下命令:(注意仓库名称用英文)
  首先在github上创建一个仓库,仓库名为“testGit”(远程仓库名必须与本地仓库名一致,否则提交失败,报仓库不存在),创建远程仓库具体操作参考:
  http://blog.csdn.net/u014079773/article/details/49555989  中“六:添加远程仓库”
  在“testGit”工程上右击“Git bash Here”输入如下命令:
  git init          初始化仓库“testGit”即把这个目录变成Git可以管理的仓库,在该目录下会生成一个隐藏文件“.git”
  touch .gitignore    git提交忽略不必要的文件夹或文件(在本地仓库中生成一个隐藏文件“.gitignore”,文本编辑器打开设置要忽略的文件或文件夹如maven项目的target文件夹)
  git add .       添加所有文件(add与“.”之间有空格,否则不识别的语法,提交所有文件)
  git commit -a -m 'version 1.2'    提交所有修改文件
  git remote add origin git@github.com:somenone/testGit.git      提交远程仓库(用SSH的形式,关联一个远程仓库)
  git push -u origin master       推送远程仓库
  备注:由于远程库是空的,我们第一次推送master分支时,加上了-u参数,Git不但会把本地的master分支内容推送的远程新的master分支,还会把本地的master分支和远程的master分支关联起来,在以后的推送或者拉取时就可以简化命令。
  之后执行就是 git push origin master
  到此我们本地项目已经提交完成,登录远程github查看发现上传成功。
  二、使用eclipse自带插件提交项目
  1.自带git插件进行配置我们的用户名和密码,即是自己github注册用户。windows--perferences--Team--Git--Configuration
DSC0000.jpg

  2.eclipse生成SSH2 key:windows -- perferences--General--Network Commection--SSH2--key  management--GeneralRSA Key
DSC0001.jpg

  然后把生成的SSH Key 注册到github上,登录github--settings--add把上诉生成的SSH Key粘贴即可。
  备注:该方法就相当于命令行方法,在公司电脑和自己笔记本电脑把生成的SSH Key粘贴即可,可以添加很多个SSH Key
  查看生成的秘钥是否在在默认系统盘(C盘),有些人奇葩会安装在其他盘。
DSC0002.jpg

  然后把生成的公钥粘贴到github上:(该步不能省略,一定要用命令检查下生成的公钥是否正常)
DSC0003.jpg

  若该步没有操作,执行命令:$ ssh -T git@github.com报这样的错误:
DSC0004.jpg

  3.本地创建项目如“testGit”和本地git仓库
  打开eclipse,创建项目“testGit”里面随便写点什么,然后"File"--"Team"--"Share Project"--"Git"--"next"
DSC0005.jpg

DSC0006.jpg

DSC0007.jpg

DSC0008.jpg

  如上图所示到此该项目“testGit”就变成git仓库,到workspace下打开该项目,发现多了一个隐藏文件“.git”,但该项目处于untracked状态(文件夹中的符号”?”表示),下面我们需要提交代码到本地仓库,如下图:
  首先我们要忽略不必要的文件如maven项目target文件夹
DSC0009.jpg

  配置.gitignore来排除这个文件夹,打开Navigator窗口,在project根目录中添加.gitignore文件,将需要排除控制的目录写入.gitignore文件中:
DSC00010.jpg

  这样git提交就过滤了一些不必要的文件,若是要过滤其他文件夹或文件直接在“.gitignore”中写,具体写法参考:
  http://blog.csdn.net/u014079773/article/details/51602344
  然后提交修改的文件必须先add然后commit故通过Team -> Add to index可以将文件加入git索引,进行版本监控:
DSC00011.jpg

  若是不想添加到版本库中则“Remove from Index”该命令前提是为未commit,若是已经commit那么该命令不起作用。添加成功后文件状态发生变化由之前的“?”变成“*”:
  细节:EGIT中只要Commit就可以默认将untracked的文件添加到索引再提交更新,不需要分开操作
DSC00012.jpg

  最后执行commit:(首次提交后,会自动生成master分支)
DSC00013.jpg

  在注释中输入提交信息:
DSC00014.jpg

  到此项目“testGit”就本地提交成功。接下来我们把本地项目提交至远程远程仓库github上:
  首先在github官网上登录并创建仓库“testGit”(该名称与本地仓库名称一致,表示本地仓库提交到远程仓库并与之关联),创建完毕后执行如下操作:
DSC00015.jpg

  进行如下设置:
DSC00016.jpg

  下拉框选择如下:
DSC00017.jpg

  然后进入如下截图操作:注意:“Force Update”若是勾选,表示覆盖提交
DSC00018.jpg

  点击“next”出现如下图所示:
DSC00019.jpg

  最后点击finis如下图,登录github查看是否上传成功。
DSC00020.jpg

  出现如下截图表示上传成功。
DSC00021.jpg

  补充:
  1.如何提交已经修改的项目,已修改的项目文件夹出现“*”号标志,选择带“*”号标志的文件右击“Team”--"commit"
DSC00022.jpg

  点击“commit and push”表示提交并推送,即把修改的文件提交至本地,推送到远程仓库。
  2.如何恢复未提交的修改文件:
DSC00023.jpg

  3.实际开发中提交项目只需要提交如下三个文件即可:
DSC00024.jpg

  4.如何用命令查看,修改remote url:
  如果你在连接github仓库的时候,用的https协议的地址,还需要切换为git协议
  可以用git remote -v 查看你当前的remote url
  $ git remote -v
  origin https://github.com/love-somnus/spring.git (fetch)
  origin https://github.com/love-somnus/Spring.git (push)
  可以看到是使用https协议进行访问的。
  这时,你可以使用 git remote set-url 来调整你的url。
  git remote set-url origin git@github.com:love-somnus/Spring.git
  完了之后,你便可以再用 git remote -v 查看一下。至此OK。
  5.查看本地SSH Key是否正常:
  $ ssh -T git@github.com
  # Attempts to ssh to github
  出现如下信息表示设置成功:
  Hi username! You've successfully authenticated, but GitHub does not # provide shell access.
  
  备注:
  1.使用eclipse插件提交项目至远程必须先本地提交,最后提交至远程仓库
  2.查看谁提交了代码,项目右击“team”--“show history”
  3.查看提交记录:Team--Show in History   (命令行为:git log)
  4.撤销恢复修改:Replace With--HEAD Revision (命令行为 git checkout head .)
  5.更新项目远程仓库:Team-- Pull (命令行:git pull https://github.com/someone/xxx.git)
  6.查看哪些文件被修改了:Team--Synchronize Workspace
  7.提交项目时注意忽略不必要的文件或文件夹如maven项目下的target文件夹忽略
  8.git提供了多重协议用来连接git服务器,其中最常见的就是https和git,git就是可以免用户名和密码的,不同的协议,项目连接地址是有区别的,如下
  https形式:https://github.com/love-somnus/Spring.git  git形式:git@github.com:love-somnus/Spring.git

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-434529-1-1.html 上篇帖子: 猴子猿 下篇帖子: git常见错误
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表