前言
由于本人记性不大好,每次想要写某个命令时就忘词了,所以在这里记录一下,对于每个命令,可能不会描述的那么仔细。想学习完整的,给大家两个写的很仔细的。
Git教程-廖雪峰的官方网站
Progit中文版
1.安装这部分就不详细说明了,后面有需要再说。
2.初次运行时的配置。
配置个人的用户名称和电子邮件地址。很重要
$ git config --global user.email cometowanwan@yahoo.com
$ git config --global user.email cometowanwan@yahoo.com
3.在工作目录中初始化新仓库
用vim到需要管理的项目目录下,执行:
$ git init
4.当前目录有要纳入版本控制的文件,执行:
$ git add a.txt
如果没有出现报错,那就是正确的。
注意:如果出现这样的情况:
fatal: pathspec 'a.txt' did not match any files
执行:
$ touch a.txt
再执行:$ git add a.txt就可以了。
5.提交
$ git commit -m '这里写本次提交的说明'
总结:
git config
配置
git init
初始化
git add
添加
git commit
提交
接下来就可以继续工作了,当进行了a.txt文件的修改之后
6.运行:
$ git status
On branch master
Changes to be committed:
(use "git reset HEAD <file>..." to unstage)
new file: a.txt
这个命令可以看到a.txt被修改了。
但有时候比较忙,会忘记自己修改了什么,输入下面这个命令可以看到:
$ git diff
不知道什么原因,我的这条命了并没有打印出任何结果,有人知道麻烦指导一下。
7.当明确知道自己修改了什么内容之后,需要再次添加提交,和第一次提交一样,执行:
$ git add a.txt
$ git commit -m '修改文字'
总结
git status
掌握工作区状态,告诉你文件被修改过
git diff
查看修改的内容
8.当修改版本之后,想回头看看自己做了哪些修改,执行:
$ git log
如果决定内容太多,看的眼花缭乱,执行:
$ git log --pretty=oneline
则会显示版本号和部分内容:
$ git log --pretty=oneline
efa5971cbc2cb731f04189207934c1207f311be0 hahaha
8ee9e077dfc5b55326b8e160c85336f9f860e31f this is a demo
9.接下来是回退版本,HEAD
表示当前版本,HEAD^
表示上一个版本,HEAD^^
表示上上版本,当版本较大时,比如100,直接写成HEAD~100
.执行:
$ git resat --hard HEAD^
HEAD is now at 8ee9e07 this is a demo
10.当版本回退之后,执行$git log 再看时,之前回退前最新的版本已经看不到了,现在又想回到之前最新的版本怎么办。只要上面的命令窗口没有关掉,找上面的纪录,找到$git log --pretty=oneline命令下的版本号,就可以回到最新的那个版本了,如下:
$ git reset --hard efa5971
HEAD is now at efa5971 hahaha
实际上版本号没必要写全,前几位就行了,git会自动去找。当然也不能只有一两位,这样就无法确定哪一个了。
11.现在看的上面的,当上面窗口没关的情况下可以用上面的方法,可是当关掉窗口,找不到最新版本的版本号怎么办,执行:
$ git reflog
git提供了这个命令来纪录你的每一次命令。
查到需要版本的版本号,再执行 $git reset --hard xxxxxxx 进行回退即可。
总结
HEAD
指当前版本,HEAD^
指上个版本
git reset --hard commit_id
版本之间转换使用
git log
查看提交历史
git log --pretty=oneline
查看简短提交历史
git reflog
查看命令历史
网友评论