IDEA 提交项目至Git与获取Git项目

 

1.IDEA提交项目至git

注:保证已安装Git分布式管理系统,没有自行百度安装git

1)在IDEA中配置Git与GitHub

a)Git:

File-->Settings --> Version Control -->Git- -> Path to Git executable:git.exe(定位到本身以前安装的git安装路径)

(自行百度安装git)

),其余配置选项默认便可 --> 点击Test测试,成功后确认git

b)GitHub:

ps:外网为Github,码云,内网使用Gitlab,大同小异,内网无需配置GitHub,跳过此步骤b,内网第一次提交项目至Gitlab,会提示输入Gitlab账号,密码,根据提示输入便可。

Host填写:github.com 

Auth Type选择:Password

而后填写本身以前注册的github账号与密码  Test成功后   Apply 而后OK 如:github

 

2)创建本地项目的Git仓库

打开打算提交到Git的项目spring

在IDEA顶部的菜单栏中找到VCS

VCS --> Import into Version Control --> Create Git Repository --> 选择要存放的路径(通常直接存放在该项目下的路径,方便后续管理和查找) --> 点击OK

3)创建远程Git仓库

在github创建一个仓库:Start a project-->输入 Repository name-->Create repository架构

matlab:New Projectssh

找到你创建的仓库,复制HTTPS或者SSH ,若Git地址采用SSH方式,则须要配置SSHmaven

样例:分布式

HTTPS传输协议URL:https://github.com/mlh666/spring-boot.gitide

SSH传输协议URL: git@github.com:mlh666/spring-boot.gitspring-boot

注:若懒人一枚,懒得配置SSH KEY,也可在IDEA只使用https传输协议,则无需配置SSH,可直接进行下一步  测试

4)提交项目至远程仓库

 

若不配置SSH Key,在IDEA使用SSH传输协议时,会报无权限问题。

配置SSH Key的好处:使用命令操做私有项目时,不须要输入账号密码,https须要输入账号密码

$ git clone git@gitee.com:mlh666/spring-boot-demo.git

按enter键
正克隆到 'spring-boot-demo'... ...

处理 delta 中: 100% (536/536), done.

$ git clone https://gitee.com/mlh666/Spring_boot_learning.git

正克隆到 'Spring_boot_learning'...
Username for 'https://gitee.com': mlh666(输入本身账号)

Password for 'https://mlh666@gitee.com': (输入密码)

remote: Counting objects: 3, done.
remote: Total 3 (delta 0), reused 0 (delta 0)
Unpacking objects: 100% (3/3), done.

 

 配置SSH密钥对样例:

打开终端:

$ cd  ~./ssh

$  ssh-keygen -t rsa -C "your_email@youremail.com"(指定本身的邮箱)

例如:

$ ssh -keygen -t rsa -C "mlh666@foxmail.com"

输入后出现

Generating public/private rsa key pair.

Enter file in which to save the key (/home/mlh/.ssh/id_rsa):

直接按enter

出现如下信息,即提示输入密码,可设可不设,看本身

Enter passphrase (empty for no passphrase):
Enter same passphrase again:

 

密码输入后出现

Your identification has been saved in /home/mlh/.ssh/id_rsa.
Your public key has been saved in /home/mlh/.ssh/id_rsa.pub.
The key fingerprint is:***********

 到此则生成密钥对成功

$ ls 

ls后发现.ssh下 有id_rsa   id_rsa.pub 文件。后缀为.pub为公钥文件

id_rsa  id_rsa.pub  known_hosts

打开公钥文件,复制公钥:$ cat  id_rsa.pub 

添加公钥到远程Git仓库:

登录github账户-->点击头像-->选择下拉菜单 Settings -> 左栏点击 SSH and GPG keys -> 点击 New SSH key;

在“Key”文本域内粘贴公钥内容。 title域,随意自定义名字便可;

点击 Add key。

尝试是否可用SSH,

git clone git clone git@gitee.com:mlh666/spring-boot-demo.git

若报错:

sign_and_send_pubkey: signing failed: agent refused operation
Permission denied (publickey).
fatal: Could not read from remote repository.

解决方法:执行命令:$ ssh-add

显示以下即成功:

Identity added: /home/mlh/.ssh/id_rsa (/home/mlh/.ssh/id_rsa)
而后再执行操做。

4)提交项目至远程仓库

VCS-->Git->Add 

而后

方式一:VCS-->Git-->Commit Directory-->在Commit Message 填写修改的信息-->commit and push

方式二: VCS-->Commit Changes(提交修改)-->在Commit Message 填写修改的信息-->commit and push

第一次提交托管,Push以前须要指定远程仓库的URL

出现Push Commits框,点击Define remote ,提示输入URL(粘贴以前本身创建的远程仓库的地址)

若弹出密码框,输入github密码,若无 直接push

 

 后续提交:

VCS-->Git->Add 

VCS-->Commit Changes

或者VCS-->Git-->Push

ps:每次修改项目,都要记得先Add一遍,再Commit

ps:最好在本身远程仓库创建分支branch,如一个项目至少应该有两个分支,一个为master(默认),正式可投入生产环境使用的版本,不随意更改;一个为开发dev,供开发测试,

养成良好习惯,在开发过程当中优化,修改等,都应该在开发分支下进行,

多人开发更应该创建开发分支,确认测试成功无误后,再也不随意更改后可push到master分支供生产环境使用,以妨成员错误操做master,影响版本使用。

idea中加入Git版本控制时 各文件颜色表明的意思:

绿色:已经加入版本控制暂未提交; 
红色:未加入版本控制; 
蓝色:加入版本控制,已提交,有改动; 
白色:加入版本控制,已提交,无改动; 
灰色:版本控制已忽略文件。

 2.idea获取git/github上的项目

获取别人的项目

先点击右上角Fork:即创建一个新分支,复制一个副本到本身的Git仓库里,而后再Clone到本地机器上。若不Fork,直接Clone,则是克隆到本身的本地机器上,链接的远程仓库仍是别人的,

本身不是原做者,没法进行开发修改。只有Fork时,就把别人的项目克隆到本身的Git远程仓库上,而后再Clone到本地,此时本地链接的是本身的远程仓库,

这样本身就有权限更新了。以下:点击Fork

 

如若获取本身项目可跳过上面Fork步骤直接开始下面的Clone步骤:

在想要获取的github项目上点击Clone or download  复制URL  以下:

github:

 

码云:

而后

第一种方式:

在顶部菜单栏找到VCS

VCS-->Checkout from Version Control-->github/git

粘贴url,点击Test,若成功,点击clone。以下:

点击yes:

选择Import project from external model 选择maven,点击next:

在Search for projects recursively 前面打对勾,而后next,最后finish(必定要打,避免有些项目没有总的pom文件)

 

第二种方式:

File-->new-->Project from Version Control-->git/github(不推荐使用,没法识别项目架构,如项目modual一多,没法识别modual,modual全变成包)

 Git Repository URL(远程仓库git的地址) :粘贴刚才copy的URL,而后自定义项目本地存放路径  点击Test ,成功后 点击Clone 

 

Fork:建立新分支,复制源项目到本身的Github上,若后续源项目更新,本身fork的项目不会跟着更新。需经过其余反式同步。

通常浏览者发现对有些项目有兴趣,项目中存在bug或可再优化,想帮原做者完善项目。则会使用fork项目,对此项目修改完善后。发起merge(合并)请求。等待原做者响应便可。

Star:关注他人的更新,相似于点赞,表示喜欢此项目,支持项目,点击Github我的头像,可看到下拉菜单your stars选项,点击此项,便可查看star的全部项目

Watch:通知提醒,默认 no wacthing,对于本身特别有兴趣,且不按期更新的项目可选择wacthing,表示之后会关注此项目更新状态,一旦有任何改动,则会在我的通知中心,邮箱不断收到通知邮件。因此请考虑后再选择,若随意选择wacthing项目,项目一多,对于不断收到的通知会超烦的。

相关文章
相关标签/搜索