1.安装GIT

现在的Linux和Unix包括MAC有的已经自带git,没有自带git的话,在Debian或Ubuntu Linux系统下执行sudo apt-get install git或者sudo apt-get install git-core就可以了,MAC的话可以从Xcode里面安装,运行Xcode,选择菜单“Xcode”->“Preferences”,在弹出窗口中找到“Downloads”,选择“Command Line Tools”,点“Install”就可以完成安装了。

Windows的话可以用msysgit,相当于Windows版的Git,http://msysgit.github.io/下载,然后按默认选项安装即可,安装完成后,在开始菜单里找到“Git”->“Git Bash”,蹦出一个类似命令行窗口的东西,就说明Git安装成功!

2.设置用户名和密码,因为git是分布式版本控制系统,所以每个机器必须设置用户名和邮箱

git config --global user.name "Your Name"

git config --global user.email "email@example.com"

注意git config命令的--global参数,用了这个参数,表示你这台机器上所有的Git仓库都会使用这个配置,当然也可以对某个仓库指定不同的用户名和Email地址。

你也可以直接进入git的配置文件中修改

找到.gitconfig,用vim或者其他的编译器打开该文件,就会看到[user]下面的name和email

直接修改完保存退出即可。

3.创建版本库

随便找个空闲的地方,建立一个目录,把所有的代码都放进去,(应该说找到你代码所在的文件夹,路径中最好没有中文)

进去那个文件夹执行命令git init(该命令的含义就是这个文件夹就可以跟踪了,这里面的东西修改删除都可以跟踪,也可以恢复)

4.把该文件夹下的所有文件都添加到仓库,再把所有文件提交到仓库,顺便写一个说明。比如:

git add 文件名.后缀,或者git add *接着提交所有的文件,git commit -m“操作的详细信息,更改了或删除了什么东西相当于日志”

5.之后的每次修改文件(就是每次写完代码)都要git add *,git commit -m”说说今天都干了什么事,代码编到哪里了”

如果忘记了上次所做的修改可以调用git diff或者git log或者git log --pretty=oneline

来查看上次的改动,你还可以通过git status来判断文件的状态,比如有几个文件没有提交,或者有几个文件没有添加

6.回退

每次的提交git都会有一串数字来确保与之相对应的一次操作,可以把它当作一个序列号或者版本号,执行git log或者git log --pretty=oneline你就会看到这些数字,每次的数字都不一样,这就是说你可以提交N多次其中的数字和对应的操作内容都不会错,所以就可以根据这些数字进行回退,假如需要回退的话,就可以根据这些数字回退到当时的状态。回退的命令就是git reset ,回退到上一次的版本就是git reset --hard HEAD^,上上一次就是git reset ––hard HEAD^^,还可以回退到前N个版本git reset ––hard HEAD~N,也可以根据那一串数字进行回退,git reset ––hard 那一串数字。还有一种情况更无语,就是回退之后发现不行,再恢复回退之前的状态,这个也是可以实现的,第一种方法就是找到那一串数字,直接用git reset ––hard 那一串数字。第二种方法你可以通过git reflog来查看你的每一次命令,这个命令记录的有那一串数字还有相应的操作。找到那一串数字应该就可以恢复了。

7.工作区和版本库

工作区就是这个目录,所有的文件都可以看到更改,就是存储你代码的那个文件夹,而版本库就是当前目录里一个隐藏的文件夹,名字是.git

这个文件夹里面存放的有关于日志还有文件的状态(那些添加了,那些提交了)等等

8.撤销工作区的修改

git checkout -- 文件名.后缀名

撤销暂存区的修改(暂存区就是add以后的地方,撤销的话先从暂存区取出来,再接着撤销工作区的文件)

git reset HEAD file,git checkout -- 文件名.后缀名

9.删除文件

如果该文件没有添加到暂存区的话,那么直接rm删掉就可以了,如果该文件提交到版本库里的话,只在工作区删除的话,git会提醒你工作区里的文件和版本库里的文件不符,那么要么你把版本库里的也给删掉,要么就从版本库里在拉一份过来,拉过来的命令是(git checkout —文件的名字.后缀),在版本库里删除文件的命令是(git rm 文件名.后缀,记得还得再提交一次)。

GIT版本控制工具总结的更多相关文章

  1. Git版本控制工具(三)----远程仓库GitHub的使用

    [声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/4 ...

  2. git版本控制工具(二)----本地版本库的常用操作

    ​[声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/ ...

  3. Git版本控制工具(一)----git的安装及创建版本库

    ​[声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/ ...

  4. Git 版本控制工具(学习笔记)

    GIT(分布式) 一.Git 初始版本控制工具 1. 安装Git Ubuntu系统下,打开shell界面,输入: sudo apt-get install git-core  之后回车输入密码,即可完 ...

  5. 使用Git版本控制工具管理GitHub

      使用Git版本控制工具管理GitHu Git是一个分步式的管理系统:只要上传操作得当,所有的都可以相当于是中央服务器,成员代码共享,A写的代码B也有,一般把一个人当做主机,其他人通过该主机拼装代码 ...

  6. Git版本控制工具学习

    Git代码管理工具学习 分布式管理工具:git 相比较svn它更加的方便,基本上我们的操作都是在本地进行的. Git文件的三种状态:已提交,已修改,以暂存. 已提交:表示文件已经被保存到本地数据库. ...

  7. Git 版本控制工具使用介绍------Windows系统下使用

    Git 是用于 Linux内核开发的版本控制工具.与常用的版本控制工具 CVS, Subversion 等不同,它采用了分布式版本库的方式,不必服务器端软件支持(wingeddevil注:这得分是用什 ...

  8. git版本控制工具基本用法讲解(转)

    一.安装Git 在linux系统使用非常方便,只需要打开shell界面,并输入: ? 1 sudo apt-get install git-core 按下回车后输入密码,即可完成Git的安装.但我们可 ...

  9. Git版本控制工具(1)

    学习Git的最佳资料网站: https://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000/ 这 ...

  10. 再次学习Git版本控制工具

    Git 究竟是怎样的一个系统呢?为什么在SVN作为版本控制工具已经非常流行的时候,还有Git这样一个版本控制工具呢?Git和SVN的区别在哪儿呢?Git优势又在哪呢?下面PHP程序员雷雪松带你一起详细 ...

随机推荐

  1. Css基础笔记(部分)

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...

  2. mySQL 约束 (Constraints)

    约束用于限制加入表的数据的类型: 1.创建表时规定约束(通过 CREATE TABLE 语句) 2.表创建之后也可以(通过 ALTER TABLE 语句). 约束类型: NOT NULL(非空) UN ...

  3. SDN2017 第二次实验作业

    安装floodlight 参考链接:http://www.sdnlab.com/19189.html 从github下载源码,并编译安装 $ sudo apt-get install build-es ...

  4. 获取QQ头像接口

    https://q4.qlogo.cn/g?b=qq&nk=QQ号码&s=140

  5. 《JavaScript高级程序设计》读书笔记--ECMAScript中所有函数的参数都是按值传递的

    ECMAScript中所有函数的参数都是按值传递的.也就是说把函数外部的值复制给函数内部的参数(内部参数的值的修改不影响实参的值). 基本类型变量的复制: 基本类型变量的复制,仅仅是值复制,num1和 ...

  6. jQuery UI dialog插件出错信息:$(this).dialog is not a function

    使用jQuery UI 1.7.2 dialog插件,遇到这样的错误: [img]http://dl.iteye.com/upload/attachment/308166/97c428e4-2ce2- ...

  7. css盒子模型(box-sizing)

    盒子模型 关于CSS重要的一个概念就是CSS盒子模型.它控制着页面这些元素的高度和宽度.盒子模型多少会让人产生一些困惑,尤其当涉及到高度和宽度计算的时候.真正盒子的宽度(在页面呈现出来的宽度)和高度, ...

  8. OpenGL笔记(三) GLSL语法与内建函数

    GLSL,OpenGL Shading Language,GLSL中没有指针,并且没有任何类型的字符串或字符. (1)GLSL的修饰符与基本数据类型 const:用于声明非可写的编译时常量变量: at ...

  9. DB2创建function(二)

    DB2创建function(一),介绍将function内容作为字段值,或做为一个where条件的情况. DB2创建function(二),介绍返回的内容为一个集合的情况.调用结果集的示例如下: se ...

  10. rownum与row_number() OVER (PARTITION BY COL1 ORDER BY COL2)

    1)rownum 为查询结果排序.使用rownum进行排序的时候是先对结果集加入伪列rownum然后再进行排序 select rownum n, a.* from ps_user a order by ...