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应用- ...
随机推荐
- 开源ORM
Farseer.net轻量级开源框架 目录 https://github.com/steden/Farseer.net ---------------------------------- SunSo ...
- poj 2699 The Maximum Number of Strong Kings【最大流+枚举】
因为n很小所以从大到小枚举答案.(从小到大先排个序,因为显然胜利场次越多越容易成为strong king.然后对于每个枚举出来的ans建图.点分别表示人和比赛.s向所有人连接流量为胜利场次的边,所有比 ...
- js判断是否为ie浏览器,精确显示各个ie版本
function IETester(userAgent){ var UA = userAgent || navigator.userAgent; if(/msie/i.test(UA ...
- bootstrap 弹出框 另类运用
下面是我在做一个简单登录页面时,应用boostrap弹出框,通过调节做成警示框的过程,前后经过了一番波折.因为摸索过程十分有趣,最后也是成功的,使用弹出框做除了警示框的效果,下面我们来看一下吧. 首先 ...
- 超级实用的VSCode插件,帮你大幅提高工作效率
Visual Studio Code是一个轻量级但功能强大的源代码编辑器,可在桌面上运行,适用于Windows,macOS和Linux. 它内置了对JavaScript,TypeScript和Node ...
- ElasticSearch | windows 上安装ES
Elastatic需要java JAVA8 环境,确保安装好环境 在windows上安装ES还是比较简单的, 1.首先在官网上下载zip,地址 https://www.elastic.co/downl ...
- jacoco 的使用及与jenkins的集成
1.把jacocoagent.jar的包放入到dockerfile COPY jacocoagent.jar /opt/jacoco/lib/jacocoagent.jar 2.打完镜像,需要启动容器 ...
- 【react native】有关入坑3个月RN的心路历程
由于一些原因,笔者最近变更到了RN的团队,回归到了hybrid app的开发的圈子中,固然是有蛮多新鲜感和新机遇的,不过遥想起以前在hybrid中各种view之前跳转的头疼等各种问题,笔者怀着忐忑的心 ...
- A - Add More Zero
Bryce1010模板 #include <bits/stdc++.h> using namespace std; #define LL long long int main() { in ...
- hdu 1863 畅通工程(Kruskal+并查集)
畅通工程 Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total Submi ...