Git——版本控制常用指令

172 阅读3分钟

意义

版本控制工具的意义

  1. 有利于多人协作开发,提升开发效率和容错率。
  2. 版本回滚,如果出了问题但是不知道什么地方出问题,可以回滚到没有问题的版本。
  3. 记录更改信息,改了代码却想不起来改了什么地方导致后继开发频出问题。
  4. 使用分支功能可以对项目作出风险更新,而不影响正在使用的正常版本。

总而言之,版本控制工具就是后悔药、时光机、平行时空。

版本控制工具主要有svngit两种,目前git使用得更多,以下为git的基本使用方法。

配置用户信息

git安装完成之后,需要进行全局配置。

全局配置邮箱:git config --global user.email "3027475580@qq.com",这里需要填写自己的邮箱,在查看更改记录的时候可以看到。

全局配置用户名: git config --global user.name "愿不觉",这里需要填写自己的名字或昵称,在查看更改记录的时候可以看到。

查看全局配置:git config --global --list

如果是针对当前仓库进行配置,只需去掉--global参数即可。

建立仓库

  1. 新建项目目录。
  2. 打开git base并进入这个目录,git base在安装git时会自动安装。
  3. 输入git init命令把这个目录初始化为版本控制仓库,以下简称仓库

如果需要值定目录,可以使用git init <目录名称>,将把指定目录初始化为仓库

暂存

改动了仓库下的文件之后需要暂存才可以进行提交, 不暂存就不能提交。

git add <文件名>, 暂存指定文件。

git add .,如果目录名使用 .,则暂存该目录下的所有文件。

提交

发生改动的文件暂存之后可以进行提交,需要填写提交信息,对改动进行说明。

git commit -m "这是提交信息",提交信息需要用双引号括起来。

查看记录

git show <唯一标识符> <文件名> ,查看指定提交记录的指定文件的提交记录。只写文件名参数则打印那个文件的最新的提交记录,不写则标识符参数则打印那个文件的的所有提交记录。两个参数都不写的话,则打印所有提交记录。

git diff <文件名>,查看指定文件的改动。

git diff,如果不加参数,则查看所有改动过的文件的改动细节。

git log ,显示所有提交记录的列表。

git log --stat, 使用vim的方式展示信息,需要按wq退出。

回滚

git reset --hard <commit id>, 更改版本到指定提交的版本。

git reset --hart HEAD^, 回滚到上个版本。

放弃更改

  1. 没有暂存:

    git checkout -- <文件名>,放弃指定文件的更改。

    git checkout .,放弃所有文件的更改。

  2. 已暂存,但没有提交:

    git reset HEAD <文件名>, 放弃指定文件的更改。

    git reset HEAD,放弃所有文件的更改。

  3. 已提交:

    git reset --hart HEAD^,直接回滚到上一个版本,也起到撤销所以本次更改的作用。