Git是什么?

  Git是目前世界上最先进的分布式版本控制系统。

它没有中央服务器的,每个人的电脑就是一个完整的版本库,这样,工作的时候就不需要联网了,因为版本都是在自己的电脑上。既然每个人的电脑都有一个完整的版本库,那多个人如何协作呢?比如说自己在电脑上改了文件A,其他人也在电脑上改了文件A,这时,你们两之间只需把各自的修改推送给对方,就可以互相看到对方的修改了

git 有三种级别的配置文件,分别是: 
       project level:对应 projectDir/.git/config 文件;设置命令为在项目根目录下执行 git config (no --global or --system). 
      global level: 对应 ~/.gitconfig 文件;设置命令为任意目录下执行 git config --global;只有在做了 git config --global 设置后 ~/.gitconfig 文件才会存在。 
      system level: 对应 /etc/gitconfig 文件;设置命令为任意目录下执行 git config --system (如果当前不是root用户,注意权限问题);只有在做了 git config --system 设置后 /etc/gitconfig 文件才会存在。

三种级别配置文件之间的关系是 project level 重写 global level,global level 重写 system level,参见:

http://www.codinginahurry.com/2011/02/05/three-levels-of-git-config/ 
所以,添加 --global 参数的 git config 修改的是全局的 git 配置文件 ~/.gitconfig,也就是说会对所有的项目有效的;如果只是想修改特定某个项目的 git 配置项,则在该项目根目录下执行不带 --global 参数的 git config 即可,此时修改的是该项目下的 .git/config 文件

常用命令: 
一般说的repo,都指的是current HEAD commit。 
config:

  1. # 查看当前的git配置项;如果出现了某个key(如user.name)重复出现的现象,是因为你在不同 level 的git配置文件中都设置了该key,前面的会被后面的重写掉,所以不用担心
  2. $ git config --list
  3. $ git config --global user.name "John Doe"
  4. $ git config --global user.email johndoe@example.com
  5. # 项目中文件权限的变更不作为文件被更改的判断依据
  6. $ git config --global core.filemode false
  7. #编辑当前项目对应的git配置文件 projectDir/.git/config
  8. $ git config -e
  9. #编辑 global level 的git配置文件 ~/.gitconfig
  10. $ git config --global -e
  11. #编辑 system level 的git配置文件 /etc/gitconfig
  12. $ git config --system -e
  13. $ git config --global core.editor "vim"
  14. $ git config --global merge.tool vimdiff
  15. # 配置 git push 的默认策略 (matching 和 simple 的区别 参见 http://stackoverflow.com/a/13148313/1635855)
  16. $ git config --global push.default simple
  17. $ git config --list

[Version Control]—— Git如何使用的更多相关文章

  1. Version Control/Git,SVN

    一.Version Control 1.什么是Version Control 版本控制(Version Control)是指对软件开发过程中各种程序代码.配置文件及说明文档等文件变更的管理,是软件配置 ...

  2. Version Control&Git

    首先了解一下什么是版本控制: Version control (版本控制)是指对软件开发过程中各种程序代码.配置文件及说明文档等文件变更的管理,是软件配置管理的核心思想之一. 其次版本控制最主要的功能 ...

  3. Introduction of Version Control/Git, SVN

    什么是版本控制? 你可以把一个版本控制系统(缩写VCS)理解为一个“数据库”,在需要的时候,它可以帮你完整地保存一个项目的快照.当你需要查看一个之前的快照(称之为“版本”)时,版本控制系统可以显示出当 ...

  4. phpstorm clone 码云项目到本地 Version Control 不显示

    最近在用码云作为代码仓库,但是建了仓库,也填加了 SSH,把项目利用 phpstorm  VCS --> checkout from version control --> git 克隆到 ...

  5. xcode svn commit is not under version control (1) & git commit

    使用Xcode提交一个第三方库时,由于包含资源文件,总是提交不了,提示报错:XXX commit is not under version control (1) 网上查了下,得知 xcode对于sv ...

  6. Git&Version Control

    Git Git(读音为/gɪt/.)是一个开源的分布式版本控制系统,可以有效.高速地处理从很小到非常大的项目版本管理. [1]  Git 是 Linus Torvalds 为了帮助管理 Linux 内 ...

  7. xcode svn commit is not under version control 和 git常用指令

    使用Xcode提交一个第三方库时,由于包含资源文件,总是提交不了,提示报错:XXX commit is not under version control (1) 网上查了下,得知 xcode对于sv ...

  8. Version Control,Git的下载与安装

    一.什么是Version Control(版本控制系统)?  ——来自百度百科 以Git为例,是一个开源的分布式版本控制系统,可以有效.高速地处理从很小到非常大的项目版本管理.Git 是 Linus ...

  9. 代码版本控制[version control]之Git

    如何多人协同开发同一个项目? 使用代码版本控制[version control]软件, 目前市面上比较流行的代码版本控制器有: git,svn,csv 1. 使用git管理代码版本 本项目使用git管 ...

随机推荐

  1. html5 javascript 事件练习3键盘控制练习

    <!DOCTYPE html><html lang="en"><head>    <meta charset="UTF-8&qu ...

  2. 本地设置VirtualBox虚拟机

    主要是涉及到网卡设置,允许本地ping虚拟机

  3. Linux NFS挂载

    Linux NFS挂载 一.NFS挂载 192.25.10.101/home/sharedata/azkaban/ODS_HS08 挂载到 192.25.10.102/home/data_azkaba ...

  4. Linux 系统级开启文件句柄 调优

    系统级开启文件句柄  max-file系统级别的能够打开的文件句柄的数量,Centos7默认是794168. Max-file 与 ulimit -n 的区别 max-file 表示系统级别的能够打开 ...

  5. 深度解析vuex

    1.什么是vuex? vuex 是一个专为 Vue.js 应用程序开发的状态管理模式(通俗一点的说Vuex就是存储数据的工具,类似于cookie.sessionStorage.localStorage ...

  6. 【2.0】使用默认日志slf4j配置

    一.SpringBoot日志简介 SpringBoot使用Commons Logging进行所有内部日志记录,但底层日志实现保持开放状态.为Java Util Logging,Log4j2和Logba ...

  7. vue-cli 构建项目在IE中无法运行解决方式(build之后可运行)

    IE浏览器(只考虑IE11,更低版本我没考虑)运行时报 Promise未定义的错误 解决办法: 1. 安装babel-polyfill (1.)  npm install babel-polyfill ...

  8. Learning-Python【21】:Python常用模块(4)—— re、logging、hashlib、subprocess

    re 模块:与正则相关的模块 在使用 re 模块之前,需要先了解正则表达式(regular expression),描述了一种字符串匹配的模式(pattern),可以用来检查一个字符串是否含有某个子字 ...

  9. Learning-Python【27】:异常处理

    一.错误与异常 程序中难免会出现错误,而错误分为两种 1.语法错误:这种错误,根本过不了 Python 解释器的语法检测,必须在程序执行前就改正 2.逻辑错误:比如用户输入的不合适等一系列错误 那什么 ...

  10. 4、zabbix基本配置入门

    Zabbix监控流程: Host group --> Hosts(向server端添加被监控主机) --> Application(在agent定义) --> Items(在appl ...