MyEclipse中上传项目到git&&MyEclipse中git操作
来源:互联网 发布:2016最新网络歌曲dj版 编辑:程序博客网 时间:2024/03/29 12:51
GitHub VS GitLib
两者都是基于Web的Git repositories仓库,拥有流水线型的web开发流程,很大程度上GitLab是仿照GitHub做出来的。它们为开发团队存储,分享,发布,测试和合作Web项目提供了中心化,云存储的场所。
GitHub:作为开源的代码库以及版本控制系统,拥有900万的开发用户。是目前最火的开源项目托管系统。同时提供公共仓库和私有仓库。但是如果使用私有仓库是需要付费的。
GitLab拥有更多的特性:
(1)便捷的用户界面,在同一界面上获取到:projects,用户,最近的用户,群组和状态;
(2)允许设置查看权限是公有还是私有;
(3)允许用户选择分析一个project的一部分代码;
(4)允许用户设置project的获取权限
(5)可以获取到团队的整体的改进进度
GitLab的配置与使用
1.创建新项目
导航条的"+"进入创建页面:
创建工程页面:
Project path:项目路径,一般认为是项目名称 Import prject from:从哪导入项目,提供Github/Bitbucket等几个选项 Description(项目的描述):可选项,对项目的简单描述 Visibility Level(项目可见级别):提供Private(私有的,只有你自己或者组内的成员能访问)/Internal(所有登录的用户)/Public(公开的,所有人都可以访问)三种选项。
2.添加和配置SSh公钥
SSH(Secure Shell)是一种安全协议,在你的电脑与GitLab服务器进行通信时,我们使用SSH密钥(SSH Keys)认证的方式来保证通信安全。
创建SSh密钥,将密钥的公钥添加到GitLab,以便通过SSH协议访问git仓库。
SSH 密钥的创建需要在终端(命令行)环境下进行,我们首先进入命令行环境。通常在OS X和Linux平台下我们使用终端工具(Terminal),在Windows平台中,可以使用Git Bash工具,git客户端安装目录下git-bash.exe文件
A:进入SSH目录:cd ~/.ssh
(1)如果还没有 ~/.ssh 目录,可以手工创建一个(mkdir ~/.ssh),之后再通过cd ~/.ssh进入SSH目录
(2)可以通过ls -l命令查看SSH目录下的文件,来确认你是否已经生成过SSH密钥;如果SSH目录为空,我们开始第二步B,生成 SSH 密钥;如果存在id_rsa.pub这个文件,说明你之前生成过SSH密钥,如何添加多个sshkey也不难,一般很少用,这里不介绍了。
B:生成SSH密钥
我们通过下面的命令生成密钥,请将命令中的YOUR_EMAIL@YOUREMAIL.COM替换为你注册gitlab时用的Email地址。
ssh-keygen -t rsa -C "YOUR_EMAIL@YOUREMAIL.COM"
在SSH生成过程中会出现以下信息,按屏幕的提示操作即可:
Note:Enter passphrase (empty for no passphrase) :时,可以直接按两次回车键输入一个空的 passphrase;也可以选择输入一个 passphrase 口令,如果此时你输入了一个passphrase,请牢记,之后每次提交时都需要输入这个口令来确认。
实践过程中Android studio 如果有密码无法同步,建议不要密码。
公钥默认地址:C:\Users\用户.ssh
连接git服务器生成可信任文件known_hosts,否则会报:Push failed: Failed with error: fatal: Could not read from remote repository.
Per android Studio help under SSH Executable:
Built-in: select this option to use the implementation provided by IntelliJ IDEA. Native: select this option to use native implementation.
修改SSH Executable 为 Native
3.获取SSH公钥信息
SSH密钥生成结束后,根据提示信息找到SSH目录,会看到私钥idrsa和公钥idrsa.pub这两个文件,不要把私钥文件id_rsa的信息透露给任何人。我们可以通过cat命令或文本编辑器来查看idrsa.pub公钥信息。
(1)通过编辑器。使用你熟悉的文本编辑器,比如 记事本、Sublime Text等软件打开idrsa.pub,复制里面的所有内容以备下一步使用。
(2)通过cat命令。在命令行中敲入cat idrsa.pub,回车执行后命令行界面中会显示idrsa.pub文件里的内容,复制后在下一步使用。
(3)通过直接使用命令将id_rsa.pub文件里的内容复制到剪切板中
Windows: clip < ~/.ssh/id_rsa.pub
Mac: pbcopy < ~/.ssh/id_rsa.pub
GNU/linux (requires xclip): xclip -sel clip < ~/.ssh/id_rsa.pub
4.添加SSH公钥到gitlab:
打开gitlab的Profile配置页面,选择SSH Keys,如图:
添加SSH公钥。填写Title和Key,其中Title是Key的描述信息,Key是上面复制的SSH公钥的内容,直接粘贴到输入框中保存即可
MyEclipse中的项目上传到gitLab中
1)项目名称-Team-Share Project...
在Configure Git Repository窗口,点击“User or create repository in parent folder of project”,然后点击“Create Repository”,新建一个本地仓库:
注意:这里一定要选择"create the Repository in the parent folder of the project……",否则,git会把整个MyUtils目录放在gitLab的MyUtils目录下,就是一个MyUtils目录又嵌套另一个MyUtils目录
此时,项目中可以看到很多问号,表示有文件需要提交:
2)项目右键-Team-Commit
Commit message输入提交的理由;点击Select All;然后点击Commit and Push
这时候会弹出一个Destination Git Repository窗口:
URI填写在1.2步中获得的https格式的项目地址;
Authentication填写github的账号和密码;
勾选“Store in Secure Store”以免每次都要输入密码。
Next >
3)在Push Ref Specifications窗口中,点击“Add All Branches Spec”,其他不用填,然后点击Next >
4)自动选择了master,点击Finish
上传成功,点击OK
5)在gitLab上验证是否上传成功
MyEclipse中如何使用git
新建文件添加到git版本监控
Team- Add to Index,可以观察到图表有了变化
将文件从索引控制中排除
Team-Remove from Index
代码提交到远程仓库
Team-Commit-Commit and Push (该操作会自动将文件加入索引控制)
查看历史记录
Team-Show in History
选择对比模式(Compare Mode)
新建分支
(1)在远程gitLab上创建分支 commits-NEW BRANCH
新分支的hotfix,是用来线上bug修复的,所以create from 是 master
(2)在MyEclipse上创建分支
Team-Swtich To-New Branch
创建完新分支,会自动切换到分支上
拉取远程gitLab代码
Team-Pull 我使用MyEclipse拉取代码的时候报错:
出现这个问题大概是因为你要设置本地和远程的分支的对应值,找到自己的的本地git路径-项目-.git-config。文件原内容:
[core]repositoryformatversion = 0filemode = falselogallrefupdates = true
添加如下内容:
[branch "master"] remote = origin merge = refs/heads/master[branch "hotfix"] remote = origin merge = refs/heads/hotfix[branch "develop"] remote = origin merge = refs/heads/develop [remote "origin"] url = http://10.127.138.129/wanglei_dev/servletLearn.git fetch = +refs/heads/*:refs/remotes/origin/*
url:用于指定自己的的远程gitlab地址 branch:"XXX",远程分支有几个就对应有几个branch
处理冲突文件:
为了模拟冲突,我在我本地develop的开发分支下,又创建了一个develop1的开发分支
(1)我在develop1的开发分支下修改了某个文件test.java,然后只commit。
(2)切换到develop开发分支下修改了同一个文件test.java,同样我也只是先commit
(3)develop分支现在开发合并代码:Team-Merge,选择要合并那个分支
(4)合并之后我们会看到:冲突
(5)解决查看冲突: (6)我们通过5的操作可以查看到谁都改了什么,进而开始进行冲突的解决,解决完冲突我们会看到我们文件是这样:
(7)我们需要加入的索引控制,上传即可
删除分支:
将svn迁移到git
(1)新建一个目录,用来保存项目
(2)$ git svn clone svn://用户名:密码@10.12.4.53/pt/AutoPlatform/DemandManagement --no-metadata
(3)进入clone的文件夹,带有.git目录的文件,查看svn的commit记录:git log
(4)本地初始化git查看完成:git remote add origin http://xxx.xxx.xxx.xx/sysdev/lecture.git
(5)推送到远程git仓库:git push -u origin master
- MyEclipse中上传项目到git&&MyEclipse中git操作
- git 上传本地项目到githut中
- 在myeclipse中使用git管理加载maven项目
- Myeclipse git常用操作
- myeclipse中git的配置和使用
- eclipse或者myeclipse中git报错: git: not authorized
- Git入门及上传项目到github中
- Git入门及上传项目到github中
- Git入门及上传项目到github中
- Git入门及上传项目到github中
- Git入门及上传项目到github中
- AndroidStudio中使用Git上传项目到github
- AndroidStudio中使用Git上传项目到github
- 使用git命令上传本地项目到gitHub中
- Git入门及上传项目到github中
- Git入门及上传项目到github中
- AndroidStudio中使用Git上传项目到github
- IDEA怎样使用git将项目上传到github中
- Android动画TimeInterpolator(插值器)和TypeEvaluator(估值器)分析
- input输入框与图片不在同一行的解决办法
- guard分支结构
- java线程里面获取bean
- 最新 macOS Sierra 10.12.3 安装CocoaPods及使用详解
- MyEclipse中上传项目到git&&MyEclipse中git操作
- PHP三元运算符的运算顺序
- ios ffmpeg audio decode
- printf格式化输出
- HQL和SQL的区别
- 前端阻止事件冒泡和默认事件
- 欢迎使用CSDN-markdown编辑器
- docker 基础
- 动态权限申请