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应用- ...
随机推荐
- Linux 常用命令八 find
一.find命令 find命令用于查找文件. 按文件名字查找: wang@wang:~/workpalce/python$ sudo find / -name "create.txt&quo ...
- poj 2987 Firing【最大权闭合子图+玄学计数 || BFS】
玄学计数 LYY Orz 第一次见这种神奇的计数方式,乍一看非常不靠谱但是仔细想想还卡不掉 就是把在建图的时候把正权变成w*10000-1,负权变成w*10000+1,跑最大权闭合子图.后面的1作用是 ...
- 比特币搬砖对冲策略Python源码
策略复制地址:https://www.fmz.com/strategy/21023 策略原理 比特币搬砖策略是入门程序化交易的基础策略.原理简单,是新手尝试程序化的好选择,在其黄金时期,比特币搬砖也带 ...
- _bzoj1497 [NOI2006]最大获利【最大权闭合子图】
传送门:http://www.lydsy.com/JudgeOnline/problem.php?id=1497 保存最大流模版. 选一个用户群,就必须要选对应的两个中转站,这种关系类似“最大全闭合子 ...
- HDFS执行getDatanodeReport时权限不足的解决办法
通过JAVA获取HDFS的getDatanodeReport方法时,报权限不足的错误信息. org.apache.hadoop.ipc.RemoteException(org.apache.hadoo ...
- 实现字符串的查找和替换 分类: c/c++ 2014-10-09 22:33 469人阅读 评论(0) 收藏
在字符串中查找目标字符串并将其替换为指定字符串,返回替换的次数.接口为 int find_str_replace(char *&str,const char *find_str,const c ...
- Drawable(6)关于StateList的补充
模板: <?xml version="1.0" encoding="utf-8"?> <selector xmlns:android=&quo ...
- DEV—【GridControl添加按钮列】
效果图 打开GridControl的Run Designer在左侧栏中找到: 添加一个ButtonEdit: 更改属性中的值:Caption为按钮上显示的Text:Kind为按钮的类型: 然后拖到最后 ...
- 用js的eval函数模拟Web API中的onclick事件
在检查组内小伙伴提交的tabToggler插件的js代码时,发现了onclick的如下用法: el.onclick = function(){ //按钮样式切换 for(var i=0;i<ob ...
- 【JavaScript】随机生成10个0~100的数字
随机生成10个0~100不重复的数字(包含0和100): 需要用到的知识点:随机数 去重 下面放代码 <!DOCTYPE html> <html> <head> & ...