Mac下IntelliJ的Git、GitHub配置及使用
1、git简介
Git是目前流行的分布式版本管理系统。它拥有两套版本库,本地库和远程库,在不进行合并和删除之类的操作时这两套版本库互不影响。也因此其近乎所有的操作都是本地执行,所以在断网的情况下任然可以提交代码,切换分支。git又使用了SHA-1哈希算法确保了在文件传输时变得不完整、磁盘损坏导致数据丢失时能立即察觉到。
git的基本工作流程:

- git clone:将远程的Master分支代码克隆到本地仓库
- git checkout:切出分支出来开发
- git add:将文件加入库跟踪区
- git commit:将库跟踪区改变的代码提交到本地代码库中
- git push: 将本地仓库中的代码提交到远程仓库
- git 分支
主分支
- 主分支
- master分支:存放随时可供生产环境中的部署的代码
- develop分支:存放当前最新开发成果的分支,当代码足够稳定时可以合并到master分支上去。
- 辅助分支
- feature分支:开发新功能使用,最终合并到develop分支或抛弃掉
- release分支:做小的缺陷修正、准备发布版本所需的各项说明信息
- hotfix分支:代码的紧急修复工作##2、git在IntelliJ IDEA下的使用
2、检查Git
检查本地是否安装Git
git --version
检查本地是否存在SSH公钥和密钥
ls ~/.ssh
如果存在id_rsa 和id_rsa.pub 说明已经存在。否则添加密钥到GitHub。
3、创建SSH Key
打开终端,执行命令,并一直敲回车键。
ssh-keygen -t rsa -b 4096 -C “你注册GitHub的邮箱”
4、添加密钥到GitHub
进入GitHub,点击头像,选择settings。
然后选择SSH and GPG keys。
然后New SSH key。
Title中输入邮箱。
key中输入刚才本地创建SSH key生成的id_rsa.pub文件的内容,复制方法为:
pbcopy < ~/.ssh/id_rsa.pub //执行此命令拷贝文件下的内容
最后粘贴到key项。点击继续。
5、测试是否关联好本地和GitHub
ssh -T git@github.com
遇到选择选yes,看到:
Hi xxxxx! You've successfully authenticated, but GitHub does not provide shell access.
说明关联成功。
6、IntelliJ配置Git
本地安装好git,并配置合理的SSH key,IntelliJ IDEA->Performance->Version Controll->GitHub,Host输入github.com,然后输入GitHub的用户名和密码,点击Test测试一下:

IntelliJ IDEA->Performance->Version Control->git,将自己安装git的可执行文件路径填入Path to Git executable,点击 Test测试一下:

7、远程仓库配置
7.1、创建本地仓库
7.1、将项目提交到本地的Git
7.3、关于远程仓库的配置
git remote add origin git@github.com:kosamino/springmvc.git #(此处为你自己远程仓库的key)
git push -u origin master #(解释:该脚本将本地的master 推到刚才设置的github远程仓库中)

如果执行完成2条脚本,没有任何提示,也没任何错误,恭喜你成功了!
8、IntelliJ远程Push代码

git remote rm origin

打开它把里面的[remote "origin"]那一行删掉 重启gitshell再重新配置。
9、GitHub Desktop提交代码
首先把当前本地库添加到GitHub Desktop:

然后commit代码:

最后publish branch:

Mac下IntelliJ的Git、GitHub配置及使用的更多相关文章
- Mac下Intellij IDEA Console中文是?
Mac下Intellij IDEA Console中文是?,解决办法是在运行时的VM参数配置也加入: -Dfile.encoding=UTF-8
- Mac下Intellij IDea发布Web项目详解一
Mac下Intellij IDea发布Web项目详解一 Mac下Intellij IDea发布Java Web项目(适合第一次配置Tomcat的家伙们)详解二 Mac下Intellij IDea发布J ...
- Mac下Intellij IDea发布Java Web项目详解五 开始测试
测试前准备工作目录 Mac下Intellij IDea发布Web项目详解一 Mac下Intellij IDea发布Java Web项目(适合第一次配置Tomcat的家伙们)详解二 Mac下Intell ...
- Mac下Android studio 之NDK配置教程(一)
Mac下Android studio 之NDK配置教程(一) 1.概述 近期项目全线转移到Mac下使用使用Android studio开发. 遇到关键代码封装到 ***native***层,此时在wi ...
- Mac下intellij idea环境的项目的新建、配色、快捷键的配置
注:本文所使用的intellij idea是14.1.2的版本号. 一.项目的新建(以新建Java项目为例) 选中当中的"create new project". 接下来你会看到下 ...
- Mac下Virtual Box Host-Only网络配置
Mac下的虚拟机其实有很多,Parallels.VMware Fusion.Virtual Box都不错,Parallels是目前试过感觉最好的,Fusion装64位系统驱动支持似乎不完善,而且混合模 ...
- MAC下用homebrew安装及配置apache、php和mysql
我们用到php运行环境的时候总喜欢用集成包,其实在mac下,用homebrew也可以很快的安装这些东西,配置也很简单. homebrew homebrew是mac下的一个包安装管理工具,使用非常简单方 ...
- mac下Android开发环境的配置
近似一天的时间,终于把Android环境配置好了. 总结:主要问题在于android的网站是国外,下载东西的时候需要vpn才可以.所以会出现各种各样的问题. 环境:Android Studio + S ...
- [转]Mac下cocos2dx-3.2+Xcode环境配置和项目创建
原文:http://blog.csdn.net/u012200908/article/details/38070885 这是有关环境配置的第二篇教程,第一篇讲的是win8下的环境配置.这里我们使用C+ ...
随机推荐
- 分布式ID生成学习
唯一 && 趋势有序 数据库auto_increment,多个写库时,每个写库不同的初始值和相同的步长(A(0,2)B(1,2)) 缺点:非绝对递增,写库压力大 DB只保存序列最大值, ...
- html 基础之canvas 和 localStorage
1,建立一个canvas 画布: <!DOCTYPE html> <html lang="en"> <head> <meta charse ...
- Sql Server 中由数字转换为指定长度的字符串
一个列的数据类型是 int ,从 1 开始自动增长,另一个列是字符串,现在想把 int 列转换成 九个字符,比如 1 转换后就是 000000001 ,添到字符串列,怎么实现呢? set @imaxU ...
- 19.JDBC和数据库访问.md
1.基本功能: Java通过JDBC完成: 2.基本类型,通常用最后一种 3.JDBC简介 Java连接SQL例子: 参考:http://blog.chinaunix.net/uid-20726500 ...
- JS代码注释
1.css和js都可以使用/**/进行注释 2.html使用<!---->注释 3.单行js代码可以使用//进行注释 <!DOCTYPE html> <html lang ...
- C#中让WebBrowser运行Javascript脚本
C#中可以让Webbrowser运行Javascript脚本来实现各种自动化操作,比如点击网页上的按钮,输入用户名密码等等.代码也很简单: >>>>>>>&g ...
- monkeyrunner学习笔记
前面部分内容转自http://blog.csdn.net/zm2714/article/details/7980634 Android自动化测试之Monkeyrunner使用方法及实例 目前andro ...
- C# 指定平台编译项目
如CefSharp就需要指定平台,项目为Any CPU时,无法编译,总会提示出错. 如: CefSharp.Common contains unmanaged resoures, set your p ...
- Ubuntu中清理Network下Connect to Server的入口
转自:http://blog.csdn.net/maxilbert/article/details/51126467 connect to server入口列表文件以xml格式存放在 ~/.confi ...
- OpenCV Python : No drawMatchesknn function
2 down vote The functions cv2.drawMatches and cv2.drawMatchesKnn are not available in newer versions ...