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测试,成功后确认

b)GitHub:

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

Host填写:github.com

Auth Type选择:Password

然后填写自己之前注册的github帐号与密码  Test成功后   Apply 然后OK 如:

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

打开打算提交到Git的项目

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

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

3)建立远程Git仓库

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

matlab:New Project

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

样例:

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

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

注:若懒人一枚,懒得配置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项目,项目一多,对于不断收到的通知会超烦的。

IDEA 提交项目至Git与获取Git项目的更多相关文章

  1. 项目管理---git----快速使用git笔记(五)------本地项目代码提交到远程仓库---新建项目

    上一篇我们已经知道了怎么从远程仓库获取项目文件代码. 项目管理---git----快速使用git笔记(四)------远程项目代码的首次获取 git还有一种使用场景是 我本来在电脑里就有一个项目,现在 ...

  2. 2.1获取Git仓库-2.2记录每次更新到仓库

    2.1 获取 Git 仓库 获取 Git 仓库通常有两种方式 将尚未进行版本控制的本地目录转换为 Git 仓库: 从其它服务器 克隆 一个已存在的 Git 仓库. 在已存在目录中初始化仓库 首先进入该 ...

  3. Git 快速入门--Git 基础

    Git 快速入门 Git 基础 那么,简单地说,Git 究竟是怎样的一个系统呢? 请注意接下来的内容非常重要,若你理解了 Git 的思想和基本工作原理,用起来就会知其所以然,游刃有余. 在开始学习 G ...

  4. maven项目配置findbugs插件 使用git钩子控制代码的提交

    maven项目配置findbugs插件对代码进行静态检测 当发现代码有bug时,就不让用户commit代码到远程仓库里 没有bug时才可以commit到远程仓库中 (1)新建maven项目 ,配置fi ...

  5. Jenkins 获取 Git 的提交记录(Change Log)

    工作中用 Jenkins 做 iOS 和 Android 的持续集成,之前实现的是当 git 有新代码提交的时候,就会自动编译并上传安装包到蒲公英,然后自动发送QQ群通知或者讨论组通知给相关小伙伴,方 ...

  6. Jenkinsfile里定义对象和函数,获取git提交人, 发送钉钉通知

    自从开始使用Jenkinsfile作为Jenkins配置后就一发不可收,因为开发者自定义CI脚本实在太方便了. 比如,最近开发的以一个项目涉及多人,提交冲突挺多的,有的人自己没编译通过就提交了,导致后 ...

  7. windows+ant+git+tomcat中ant直接获取git项目部署注意点

    最近项目搬迁到公司的"GitHub"上面原来的SVN的ant发布脚本要改下,于是百度ant获取git的方法太少了,windows平台上更是没有所以搞了两天,今天终于有点成果分享给大 ...

  8. 【转】 Git——如何将本地项目提交至远程仓库

    1.(先进入项目文件夹)通过命令 git init 把这个目录变成git可以管理的仓库 git init 2.把文件添加到版本库中,使用命令 git add .添加到暂存区里面去,不要忘记后面的小数点 ...

  9. 项目管理---git----快速使用git笔记(四)------远程项目代码的首次获取

    使用git最常见的场景是 你需要参与到一个项目中,而这个项目的代码,同事已经上传到github或者https://coding.net了. 这时候他会给你一个项目代码的远程仓库链接. 例如: http ...

随机推荐

  1. equals和toString

    Object的equals方法默认比较地址值.所以当需要比较两个对象的内容时需要重写equals方法.

  2. iOS 中 AFNetworking HTTPS 的使用

    由于我们公司由HTTP转HTTPS,出现了一系列问题特此记录下. 一.HTTPS 二.App Transport Security 三.iOS 中用HTTPS 注意的问题 四.使用 AFNetwork ...

  3. 《Cracking the Coding Interview》——第17章:普通题——题目10

    2014-04-28 23:54 题目:XML文件的冗余度很大,主要在于尖括号里的字段名.按照书上给定的方式进行压缩. 解法:这题我居然忘做了,只写了一句话的注解.用python能够相对方便地实现,因 ...

  4. 孤荷凌寒自学python第十三天python代码的外部模块引用与基本赋值语句

    孤荷凌寒自学python第十三天python代码的外部模块引用与基本赋值语句 (完整学习过程屏幕记录视频地址在文末,手写笔记在文末) 从结构化编程流行以来,代码便被分块存储,称之为模块或库. 在pyt ...

  5. Linux 文本对比 diff 命令详解(整理)

    diff 命令详解 1.概述 windows系统下面就有不错的文本对比工具可以使用,例如常用的Beyond Compare,WinMerge都是图形界面的比较工具而且使用非常方便,如果你仅仅是在win ...

  6. PPC Windows Mobile判断网络(gprs)连接与否代码

    转载 在PPC的开发中有时需要判断网络什么时候连接,什么时候断开,并且做出相应的处理.比如说TimeSyncPPC程序,就需要在网络连接之后得到消息然后去下载时间同步信息,因此就必须要一种方法让Tim ...

  7. pytorch:EDSR 生成训练数据的方法

    Pytorch:EDSR 生成训练数据的方法 引言 Winter is coming 正文 pytorch提供的DataLoader 是用来包装你的数据的工具. 所以你要将自己的 (numpy arr ...

  8. [bzoj3218] a+b problem [最小割+数据结构优化建图]

    题面 传送门 思路 最小割 我们首先忽略掉那个奇♂怪的限制,就有一个比较显然的最小割模型: 建立源点$S$和汇点$T$ 对于每个元素$i$建立一个点$i$,连边$<S,i,w[i]>$和$ ...

  9. linux下源代码分析和阅读工具比较

    Windows下的源码阅读工具Souce Insight凭借着其易用性和多种编程语言的支持,无疑是这个领域的“带头大哥”.Linux/UNIX环境下呢?似乎仍然是处于百花齐放,各有千秋的春秋战国时代, ...

  10. 1031. 高一学堂 (at)

    题目描述 在美丽的中山纪念中学里面,有一座高一学堂.所谓山不在高,有仙则名:水不在深,有龙则灵.高一学堂,因为有了yxr,就成了现在这个样子 = =. 由于yxr的语言太过雷人,每次他发微往往都会有一 ...