Git命令记录

Posted JonSnow

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Git命令记录相关的知识,希望对你有一定的参考价值。

1、创建与修改用户名和邮箱地址:

  $ git config --global user.name "username"

  $ git config --global user.email "email"

2、查看用户名和邮箱地址:

  $ git config user.name

  $ git config user.email

3、显示当前目录

  $ git pwd

4、把当前目录变成Git可以管理的仓库

  $git init

5、Git添加文件需要add、commit一共两步

  例子:

  $ git add file1.txt

  $ git add file2.txt file3.txt

  $ git commit -m "add 3 files."

6、让我们时刻掌握仓库当前的状态

  $ git status

7、Git告诉我们readme.txt被修改了,但如果能看看具体修改了什么内容,自然是很好的。比如你休假两周从国外回来,第一天上班时,已经记不清上次怎么修改的readme.txt,所以,需要用git diff这个命令看看:

  $ git diff readme.txt

8、git log命令显示从最近到最远的提交日志

  $ git log

  如果嫌输出信息太多,看得眼花缭乱的,可以试试加上--pretty=oneline参数:

  $ git log --pretty=oneline

10、在Git中,用HEAD表示当前版本,上一个版本就是HEAD^,上上一个版本就是HEAD^^,当然往上100个版本写100个^比较容易数不过来,所以写成HEAD~100。

11、回退到上一个版本

  $ git reset --hard HEAD^

  回到指定commit id的版本 

  $ git reset --hard 1094a   //1094a id前几位

12、查看文件

   $ git cat readme.txt

13、查看历史命令

  $ git reflog

14、概念:理解工作区与暂存区,git add命令实际上就是把要提交的所有修改放到暂存区(Stage),然后,执行git commit就可以一次性把暂存区的所有修改提交到分支;

  Git跟踪并管理的是修改,而非文件,每次修改,如果不用git add到暂存区,那就不会加入到commit中

15、用git diff HEAD -- readme.txt命令可以查看工作区和版本库里面最新版本的区别:

16、git checkout -- file 可以丢弃工作区的修改:

  $ git checkout -- readme.txt

  命令git checkout -- readme.txt意思就是,把readme.txt文件在工作区的修改全部撤销,这里有两种情况:

  一种是readme.txt自修改后还没有被放到暂存区,现在,撤销修改就回到和版本库一模一样的状态;

  一种是readme.txt已经添加到暂存区后,又作了修改,现在,撤销修改就回到添加到暂存区后的状态。

  总之,就是让这个文件回到最近一次git commit或git add时的状态。

17、用命令git reset HEAD <file>可以把暂存区的修改撤销掉(unstage),重新放回工作区:

  $ git reset HEAD readme.txt

18、删除文件git rm <file>

  $ git rm test.txt

  现在你有两个选择,一是确实要从版本库中删除该文件,那就用命令git rm删掉,并且git commit:
  另一种情况是删错了,因为版本库里还有呢,所以可以很轻松地把误删的文件恢复到最新版本:$ git checkout -- test.txt
  git checkout其实是用版本库里的版本替换工作区的版本,无论工作区是修改还是删除,都可以“一键还原”。

以上是关于Git命令记录的主要内容,如果未能解决你的问题,请参考以下文章

Git常用命令使用记录以及个人理解

git 命令行下浏览器tig使用记录

记录Git 命令整理

git(五 合并提交命令)

git命令记录

git 命令记录贴