Git 教程 -- 第一天
什么是Git?
Git是一个开源的分布式版本控制系统,可以有效、高速的处理从很小到非常大的项目版本管理。
为什么使用Git?
众所周知,版本控制系统分为集中式版本控制系统(SVN、CVS等)与分布式版本控制系统(Git等),那它们之间有什么区别呢?
集中式版本控制系统:版本库是集中存放在中央服务器的。如SVN在使用时,须从服务器中拉取最新版本,提交代码时,还需要更新服务器的最新内容,避免冲突,再推送到服务器;所以所以项目的参与者都需要使用到中央服务器,一单服务器出错,全员放假。
分布式版本控制系统:没有中央服务器,每个项目参与则都有一个完整的版本库,即使在没有网络的情况下亦可以提交 commit
怎么使用Git?
下载地址:https://git-scm.com/
环境配置
- 安装:下载后按照默认选项安装即可;
初次使用,配置git工作环境;Git 配置工作环境有三种形式,而我们一般使用的就是第二种:
- /etc/gitconfig 文件:系统中对所有用户都普遍适用的配置。若使用 git config 时用 --system 选项,读写的就是这个文件。
- ~/.gitconfig 文件:用户目录下的配置文件只适用于该用户。若使用 git config 时用 --global 选项,读写的就是这个文件。
- 当前项目的 Git 目录中的配置文件(也就是工作目录中的 .git/config 文件):这里的配置仅仅针对当前项目有效。每一个级别的配置都会覆盖上层的相同配置,所以 .git/config 里的配置会覆盖 /etc/gitconfig 中的同名变量。
参考:https://git-scm.com/
用户配置:
>$ git config --global user.name "Your Name" >$ git config --global user.email "email@example.com"- 查看用户配置信息:
- git config --global --list;
- 注:查看系统配置信息:
- git config --system --list ;
- 查看项目配置信息:
- git config -- local --list
- 查看用户配置信息:
创建版本库
进入A盘创建git仓库,进行管理git项目;
例如:创建 a:/MyWork-Git
>$ cd /a >$ mkdir MyWork-Git >$ cd MyWork-Git
- 初始化 git init
git init : 要对现有的某个项目开始用 Git 管理,只需到此项目所在的目录,执行:
git init
如下:执行后仓库中出现一个名为 .git 的目录;没事千万不要手动修改这个目录里面的文件
>$ git init Initialized empty Git repository in A:/MyWork-Git/.git/注;若没有看到.git目录,那是因为这个目录默认是隐藏的(windows 显示隐藏文件即可)
提交文件。
- 初始化成功后,此时MyWork-Git就是一个git项目了;编写一个readme.txt文件,如下:
>$ vi readme.txt
输入内容;
退出编辑:Esc 再 shift 输入 :wq 查看当前仓库状态:
>$ git status ;显示有文件更新,未加入仓库

提交
第一步,用命令git add告诉Git,把文件添加到仓库:
>$ git add readme.txt再次 查看状态 :
>git status ;显示有文件加入仓库,未提交

第二步,用命令git commit告诉Git,把文件提交到仓库:并检查提交后的状态

git commit命令,-m后面输入的是本次提交的说明。
修改文件
修改文件内容后 ,查看改动信息
>git diff
查看提交记录
可查看版本号
>git log
第一天总结
- 如何配置git 工作环境:
- $ git config --global user.name "John Doe"
- $ git config --global user.email “xxxxx@xxx.com”
- 如何是项目交由Git管理--->git init
- 查看仓库状态 --->git status
- 查看修改内容 ---> git diff
- 提交文件: git add ----> git commit -m"xxxx"
- 查看历史 git log
Git 教程 -- 第一天的更多相关文章
- 转:git教程 ~~非常好的入门教程
--------------------------------------- notes: cdmkdir dirnametouchls > filenamelsecho "this ...
- 分布式版本控制系统 Git 教程
简介 Git 是什么? Git 是一个开源的分布式版本控制系统. 什么是版本控制? 版本控制是一种记录一个或若干文件内容变化,以便将来查阅特定版本修订情况的系统. 什么是分布式版本控制系统? 介绍分布 ...
- [转]Git教程【译】
[转]Git教程[译] http://www.cnblogs.com/zhangjing230/archive/2012/05/09/2489745.html 原文出处:http://www.voge ...
- 深入浅出Git教程(转载)
目录 一.版本控制概要 1.1.什么是版本控制 1.2.常用术语 1.3.常见的版本控制器 1.4.版本控制分类 1.4.1.本地版本控制 1.4.2.集中版本控制 1.4.3.分布式版本控制 1.5 ...
- git常用命令总结--廖雪峰老师Git教程命令总结
学习了廖雪峰老师的Git教程之后的命令总结,重点关于git和远程仓库的东西. 如果没有学过,这是传送门 下面这个图很重要 一.git初始化本地仓库和配置 echo "想输入到文件的内容,一般 ...
- Git 教程(一):简介和安装
为什么要编写这个教程?因为我在学习Git的过程中,买过书,也在网上Google了一堆Git相关的文章和教程,但令人失望的是,这些教程不是难得令人发指,就是简单得一笔带过,或者,只支离破碎地介绍Git的 ...
- 深入浅出Git教程【转载】转载
深入浅出Git教程(转载) 目录 一.版本控制概要 1.1.什么是版本控制 1.2.常用术语 1.3.常见的版本控制器 1.4.版本控制分类 1.4.1.本地版本控制 1.4.2.集中版本控制 1 ...
- Git教程(二)-如何上传和同步自己的git项目
本文来自http://blog.csdn.net/liuxian13183/ ,引用必须注明出处! Git接触并使用多年, 工作中使用较多,它的分布式存储,使每个人的电脑均为服务器的策略非常棒:再加上 ...
- EnjoyingSoft之Mule ESB开发教程第一篇:初识Mule ESB
目录 1. Mule ESB基本介绍 2. Mule ESB社区版和企业版 3. Mule ESB常用场景 4. Mule ESB软件安装 客户端安装 服务端安装 5. 第一个Mule ESB应用- ...
随机推荐
- HDU3949:XOR(高斯消元)(线性基)
传送门 题意 给出n个数,任意个数任意数异或构成一个集合,询问第k大个数 分析 这题需要用到线性基,下面是一些资料 1.高斯消元&线性基&Matirx_Tree定理 笔记 2.关于线性 ...
- bzoj 1497 [NOI2006]最大获利【最大权闭合子图+最小割】
不要被5s时限和50000点数吓倒!大胆网络流!我一个5w级别的dinic只跑了1s+! 看起来没有最大权闭合子图的特征--限制,实际上还是有的. 我们需要把中转站看成负权点,把p看成点权,把客户看成 ...
- bzoj3316: JC loves Mkk(单调队列+分数规划)
Description Input 第1行,包含三个整数.n,L,R.第2行n个数,代表a[1..n]. Output 仅1行,表示询问答案.如果答案是整数,就输出整数:否则,输出既约分数“P/Q”来 ...
- 我理解的 js 异步成长总结
本文是自己的理解,如果有错误的地方,还请各路大神指出 首先说下我最常用的 Promise getHandlePickupQrPromise() { // 定义返回 Promise对象 // Promi ...
- Vue父子组件传值之——访问根组件$root、$parent、$children和$refs
Vue组件传值除了prop和$emit,我们还可以直接获取组件对象: 根组件: $root // 单一对象 表示当前组件树的根 Vue 实例,即new Vue({...根组件内容}).如果当前实例没有 ...
- Mybatis的全局配置文件标签介绍(mybatis-config.xml)
全局配置文件中本人只记录了常用的几个 typeHandlers, objectFactory,objectWrapperFactory, reflectorFactory, plugins, dat ...
- python之定时器Timer
timer类 Timer(定时器)是Thread的派生类,用于在指定时间后调用一个方法. 构造方法: Timer(interval, function, args=[], kwargs={}) in ...
- CF916E
Codeforces 916E 简要题解Description Description 有一棵n个点的树,每个节点上有一个权值wi,最开始根为1号点.现在有3种类型的操作: 1 root, 表示将根设 ...
- [POI2010]Antisymmetry
Description 对于一个01字符串,如果将这个字符串0和1取反后,再将整个串反过来和原串一样,就称作"反对称"字符串.比如00001111和010101就是反对称的,100 ...
- urllib的高级用法
Handler简介 我们可以把他理解为各种处理器,有专门处理登录验证的,有处理cookies的,有处理代理设置的.利用他们,我们几乎可以做到HTTP请求中的所有事情. 首先,介绍一下 urllib.r ...