Mac上安装Git
转载注明出处:http://blog.csdn.net/xiaohanluo/article/details/53214933
Git安装
下载Git有两种方法
- 直接下载安装包,Git下载地址
- 用homebrew指令下载,不过首先需要安装homebrew
- 在终端执行后面指令安装,
homebrew /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)" - 完成后,使用以后指令安装Git,
brew install git
- 在终端执行后面指令安装,
安装好Git后,配置用户名和用户邮箱,以后每次与Git的交互都会使用该信息。
git config --global user.name "your_name"
git config --global user.email "your_email@gmail.com"
- 1
- 2
配置信息可以更改,以后想要更改使用上面指令就可以。同时可以使用git config --list指令查看Git的配置信息。
Git默认是大小写不敏感的,也就是说,将一个文件名某个字母做了大小写转换的修改Git是忽略这个改动的,导致在同步代码时候会出现错误,所以建议大小把Git设置成大小写敏感。
git config core.ignorecase false
- 1
生成密钥
Git关联远端仓库时候需要提供公钥,本地保存私钥,每次与远端仓库交互时候,远端仓库会用公钥来验证交互者身份。使用以下指令生成密钥。
ssh-keygen -t rsa -C "your_email@youremail.com"
生成密钥后,在本地的/Users/当前电脑用户/.ssh目录下会生成两个文件id_rsa、id_rsa.pub,id_rsa文件保存的是私钥,保存于本地,id_rsa.pub文件保存的是公钥,需要将里面内容上传到远端仓库。
获取公钥字符串具体操作如下图。
图-1 获取公钥
- 输入
cd指令,进入当前用户目录 - 输入
ls -a指令,查看当前用户目录下所有文件,包括隐藏文件 - 输入
cd .ssh指令,进入.ssh目录 - 输入
ls指令,查看.ssh目录下的文件 - 输入
cat id_rsa.pub指令,查看id_rsa.pub文件中内容
远端仓库添加密钥
以GitHub为例子,向远端仓库添加公钥,上面已经获取到了公钥,只需要将公钥添加到远端仓库就可以了。
图-1 添加公钥
在个人设置页面,左边选中SSH and GPG keys,在右边添加公钥,title是key的名称,可以随便取,可更改,key是上面我们获取到的公钥,填写完毕后点击add SSH key按钮,这样远端就添加到了密钥。
本地关联远端仓库
- 在本地文件夹下面执行
git init指令,初始化文件夹,作为本地的一个仓库。 - 执行
git remote add origin 仓库的ssh链接 - 执行
git pull指令,将远端代码拉取到本地
执行完毕后,远端仓库代码已经同步到了本地。
常用Git指令
初始化配置
git config —global user.name “XXX"
git config --global user.email “XXXX"- 1
- 2
设置大小写敏感
git config core.ignorecase false- 1
生成密钥
ssh-keygen -t rsa -C “your_email”- 1
将远端代码clone到本地目录
git clone <远端git> <本地目录>- 1
提交修改
git add <文件> // 将有修改的文件添加到本地缓存中 git add . 是添加所有修改
git commit -m "本次修改信息" // 提交本次修改,一般是在git add之后操作
git reset . // 撤销add
git rm --cached . // 撤销add- 1
- 2
- 3
- 4
切换分支
git checkout <branch_name>- 1
以当前分支为蓝本新建分支并切换到新分支
git checkout -b <branch_name>- 1
当前分支合并其他分支
git merge <branch_name>- 1
远端新建分支,其实就是将本地分支推送至远端
git push origin <local_branch_name>:<remote_branch_name>- 1
删除远端分支,其实就是推送了一个空的分支到远端覆盖了原来的远端分支
git push origin :<remote_branch_name>- 1
从远端拉取分支,并建立对应关系
git checkout -b <local_branch_name> origin/<remote_branch_name>
// 或者
git branch —track <local_branch_name> origin/<remote_branch_name>- 1
- 2
- 3
本地已经存在的分支和远端分支建立对应关系
git branch —set-upstream <local_branch_name> origin/<remote_branch_name>- 1
添加远端库
git remote add <远端库代称> <远端库地址>
git clone <远端库地址> <目录> //不需要git init- 1
- 2
回滚到某一个提交版本
git reset --hard/soft <commit_id> // 回滚到某一个版本
git reset --hard/soft HEAD~<num> // 回滚num个提交
git revert <merge_commit_id> -m number // 撤销某一次merge- 1
- 2
- 3
强制远端覆盖本地
git fetch --all
git reset --hard origin/<remote_branch_name>- 1
- 2
提交日志查看方式
git log -p 每一次提交具体差异
git log —stat 显示文件修改差异,没显示具体修改
git log —graph 树形状提交记录,可查看分支合并信息- 1
- 2
- 3
git pull —rebase有冲突后,解决冲突,使用git add .然后使用git rebase --continue切换到某个分支,将其他分支的某次提交应用到该分支
git checkout <branch_name>
git cherry-pick <commit id>- 1
- 2
前者表示把到之间(左开右闭,不包含start-commit-id)的提交cherry-pick到当前分支;后者表示把到之间(闭区间,包含start-commit-id)的提交cherry-pick到当前分支。
git cherry-pick <start-commit-id>..<end-commit-id>
git cherry-pick <start-commit-id>^..<end-commit-id>- 1
- 2
tag
新建tag
git tag <tag_name> //轻量标签
git tag -a <tag_name> -m "tag_msg" // 附注标签
git tag -a <tag_name> <commint_id> // 给某次提交添加标签- 1
- 2
- 3
删除tag
git tag -d <tag_name>- 1
查看tag
git tag // 查看所有tag
git show <tag_name> // 查看某条tag- 1
- 2
提交到远端
git push origin <tag_name> // 将某个tag提交到远端
git push origin –tags // 将所有tag提交到远端- 1
- 2
branch相关指令
git branch -d <branch_name> // 删除某个分支
git branch -D <branch_name> // 强制删除某个分支
git branch -avv // 查看本地分支与远端分支关系,并且显示分支最新一次提交信息
git remote show origin // 查看远端分支间关系
Mac上安装Git的更多相关文章
- 【mac上安装&配置&使用git】
转自:https://www.jianshu.com/p/7edb6b838a2e 目录 安装git 创建ssh key.配置git 提交本地项目到GitHub 一.安装Git MAC 上安装Git主 ...
- mac下安装git,并将本地的项目上传到github
mac下安装git 安装过程: 1.下载Git installer http://git-scm.com/downloads 2.下载之后打开,双击.pkg安装 3.打开终端,使用git --vers ...
- 关于如何在mac系统上安装Git并在码市上建立项目
对Git一窍不通,为了在mac系统上安装Git,查了很多资料,走了很多弯路,一切搞定后发现其实很简单. 1.在https://brew.sh上按要求安装Homebrew. 2.在电脑终端键入brew ...
- Git学习系列之Windows上安装Git详细步骤(图文详解)
前言 最初,Git是用于Linux下的内核代码管理.因为其非常好用,目前,已经被成功移植到Mac和Windows操作系统下. 鉴于大部分使用者使用的是Windows操作系统,故,这里详细讲解Windo ...
- Eclipse上安装GIT插件EGit及使用
一.Eclipse上安装GIT插件EGit Eclipse的版本eclipse-java-helios-SR2-win32.zip(在Eclipse3.3版本找不到对应的 EGit插件,无法安装) E ...
- 在Mac上安装IntelliJ IDEA
这篇文章旨在介绍如何在Mac系统上安装IntelliJ IDEA,至于IntelliJ IDEA的介绍和使用方法,大家另行查阅,本篇的文章不再详细阐述. 简短解说,IntelliJ IDEA是可以用来 ...
- Eclipse上安装GIT插件EGit
一.Eclipse上安装GIT插件EGit Eclipse的版本eclipse-java-helios-SR2-win32.zip(在Eclipse3.3版本找不到对应的 EGit插件,无法安装) E ...
- Mac上安装brew
用过ubuntu系统的都知道,上面有一个命令apt-get 很方便可以快速的安装很多软件 特别lamp环境 都是一键安装. 在mac上也有类似的命令 brew brew用法可以访问官网地址 http ...
- 【转】Eclipse上安装GIT插件EGit及使用
http://yufenfei.iteye.com/blog/1750124 一.Eclipse上安装GIT插件EGit Eclipse的版本eclipse-java-helios-SR2-win32 ...
随机推荐
- GPUImage中饱和度调整的实现——GPUImageSaturationFilter
饱和度saturation,是指色彩的鲜艳程度,也称色彩的纯度.饱和度取决于该色中含色成分和消色成分(灰色)的比例.含色成分越大,饱和度越大:消色成分越大,饱和度越小.纯的颜色都是高度饱和的,如鲜红, ...
- java 可重入锁ReentrantLock的介绍
一个小例子帮助理解(我们常用的synchronized也是可重入锁) 话说从前有一个村子,在这个村子中有一口水井,家家户户都需要到这口井里打水喝.由于井水有限,大家只能依次打水.为了实现家家有水喝,户 ...
- __file__ 作用以及模块导入方法
python 执行py 文件的时候,默认就会把当前目录增加到sys.path中 import os print(__file__) #打印文件当前的位置 直接在目录里面执行,结果显示当前文件(pych ...
- node.js定时任务 node-schedule
先安装 node-schedule npm install node-schedule //1:确定时间 //例如:2014年2月14日,15:40执行 var schedule = require( ...
- delphi java 日期 转换 获取Unix时间戳
获取Unix时间戳 http://www.cnblogs.com/findumars/p/4716753.html 最简单准确一句话 Result:=IntToStr( DateTimeToUnix ...
- 快速掌握和使用Flyway
什么是Flyway? 转载:https://blog.waterstrong.me/flyway-in-practice/ Flyway is an open-source database migr ...
- 机器学习进阶-图像梯度运算-Sobel算子 1. cv2.Sobel(使用Sobel算子进行计算) 2. cv2.convertScalerAbs(将像素点进行绝对值的计算)
1.cv2.Sobel(src, ddepth, dx, dy, ksize) 进行sobel算子计算 参数说明:src表示当前图片,ddepth表示图片深度,这里使用cv2.CV_64F使得结果可 ...
- day21-类的组合
一.面向对象的组合用法 软件重用的重要方式除了继承之外还有另外一种方式,即:组合组合指的是,在一个类中以另外一个类的对象作为数据属性,称为类的组合 用组合的方式建立了类与组合的类之间的关系,它是一种‘ ...
- 页面中onclick事件引号问题
第一种:html中onclick调用事件 <p id="txt" onclick="changeSize()">加括弧的changeSize()&l ...
- block原理
block原理 block的本质是一个结构体,包含引用的外部变量及一个需要执行的函数的函数指针,在内存中可以有三个位置,即堆上.栈上和全局区(静态区).当block中没有引用外部变量时,block的位 ...