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_rsaid_rsa.pubid_rsa文件保存的是私钥,保存于本地,id_rsa.pub文件保存的是公钥,需要将里面内容上传到远端仓库。

远端仓库添加密钥

以GitHub为例子,向远端仓库添加公钥,上面已经获取到了公钥,只需要将公钥添加到远端仓库就可以了。


图-1 添加公钥

在个人设置页面,左边选中SSH and GPG keys,在右边添加公钥,title是key的名称,可以随便取,可更改,key是上面我们获取到的公钥,填写完毕后点击add SSH key按钮,这样远端就添加到了密钥。

本地关联远端仓库

  • 在本地文件夹下面执行git init指令,初始化文件夹,作为本地的一个仓库。
  • 执行git remote add origin 仓库的ssh链接(ssh 链接是你github上项目的位置)
  • 执行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 // 查看远端分支间关系

转载注明出处:http://blog.csdn.net/xiaohanluo/article/details/53214933

git 安装及常用命令相关推荐

  1. Docker(一):Docker的安装与常用命令

    相关阅读: Docker(一):Docker的安装与常用命令 Docker(二):Docker常用命令之镜像的创建:Dockerfile 与 commit Docker(三):Docker镜像导入与导 ...

  2. npm、cnpm、yarn的安装与常用命令

    1.安装 npm curl -L https://www.npmjs.com/install.sh | sh a.临时使用(例如安装express) npm --registry https://re ...

  3. linux下载安装的命令,linux安装和常用命令

    linux安装和常用命令 (6页) 本资源提供全文预览,点击全文预览即可全文预览,如果喜欢文档就下载吧,查找使用更方便哦! 14.90 积分 Linux安装和常用命令常用命令:文件管理:1,cat:把 ...

  4. Git Bash Here常用命令以及使用步骤

    Git Bash Here常用命令以及使用步骤 1.首先,要clone项目代码: git clone 链接地址 2.更新代码: git pull 3.添加修改过的文件.文件夹: git add 修改过 ...

  5. iOS:如何在iphone、ipad上安装一些常用命令行命令

    iOS:如何在iphone.ipad上安装一些常用命令行命令 相信对Linux.Unix比较熟悉的朋友,在iphone或 ipad越狱后发现通过Cydia可以安装OpenSSH,一定都想安装上并且通过 ...

  6. Stata17安装及常用命令使用教程

    Stata17安装及常用命令使用教程 一.安装Stata17 二.安装外部命令 三.常用命令及操作 1.输入数据 2.描述性统计 3.线性回归 4.内生性检验 一.安装Stata17 链接:https ...

  7. Chocolatey安装与常用命令

    文章目录 Chocolatey安装与常用命令 1. Chocolatey的安装 (1) cmd安装 (2) PowerShell安装 2. 检查与更新 (1) 检查是否安装成功 (2) 查看安装目录 ...

  8. Linux-Day01_简介_安装_常用命令_虚拟机快照_静态ip

    Linux-Day01 课程内容 Linux简介 Linux安装 Linux常用命令 1. 前言 1.1 什么是Linux Linux是一套免费使用和自由传播的操作系统.说到操作系统,大家比较熟知的应 ...

  9. 运维之道 | Git分布式版本控制常用命令解析

    Git分布式版本控制常用命令解析 一.创建版本库 版本库(repository)也叫仓库,可以看做一个目录,这个目录里的所以文件都由Git进行管理,每个文件的修改.删除,Git都能跟踪 1.选择一个合 ...

  10. Docker在CentOS7上的安装及常用命令

    Docker简介:Docker是一个开源的应用容器引擎,可以让开发者打包他们的应用以及依赖包到一个轻量级.可移植的容器中,然后发布到任何流行的Linux机器上,也可以实现虚拟化.容器是完全使用沙箱机制 ...

最新文章

  1. 字节二面,让写一个LFU缓存策略算法,懵了
  2. 树的方向,风决定;人的方向,自己决定
  3. mysql数据库有几种连接方法_几种常见的数据库连接方法
  4. 66319d电源使用说明书_你用对电暖器了吗?冬季使用家电应该注意这四点
  5. 强大的Mockito测试框架(转)
  6. DotNetTextBox V2.0 Web Control(ASP.NET2.0 增强型TextBox控件,完全支持AJAX.NET)
  7. 关于 UTXO 的思考
  8. Java 基础——类和对象
  9. 局域网中计算机网络密码查看,Win10怎么查看电脑上已知的wifi网络密码
  10. 杭电 4907 Task schedule ·
  11. 代码安全_弱点(脆弱性)分析 CWE_20200807
  12. 嵌入式Linux驱动学习之路(二)u-boot体验
  13. vc++2010注册表修改
  14. android 音频对比,差距只有安卓?索尼Zx300a与505全方位对比
  15. CAN波特率计算公式
  16. stm32f407工程改为stm32f401的方法,并修改时钟
  17. 《巴菲特致股东的信》十年期固定行使价格期权对公司的侵蚀-计算过程演示
  18. 加州大学戴维斯分校 计算机科学,美国王牌专业!加州大学戴维斯分校计算机科学专业等你来...
  19. cyclic behavior during switching
  20. java的过滤器_java过滤器

热门文章

  1. html入门的常见问题
  2. MySQL内存----使用说明全局缓存+线程缓存) 转
  3. 关于apache的重启
  4. 维护LINQ to SQL多对多表间关系[转]
  5. 拓端tecdat|GARCH(1,1),MA以及历史模拟法的VaR比较
  6. django数据库增删改查操作
  7. from .import xxx什么意思
  8. java类的加载与初始化_Java类何时以及如何加载和初始化?
  9. do还是doing imagine加to_朗华环保环保管家科普之系列133:关于溶解氧DO,你真正了解吗?...
  10. LeetCode刷题(简单)笔记C++