Git仓库文件添加提交
首先在我们的仓库目录中放置你需要添加的文件
例如我在仓库目录一个test.txt文件
随后用以下命令将该文件添加到Git目录当中。
git add test.txt
在cmd进到Git仓库的目录下执行上面的命令,没有任何显示,说明添加成功。
我们在Git仓库中可以一次性添加很多文件,当把所有的文件添加进来以后,再进行文件的提交,命令如下:
git commit -m "添加了一个test文件" //-m后面输入的是本次提交的说明,可以输入任意内容
git commit命令执行成功后会告诉你:
1 file changed:1个文件被改动(我添加的test.txt文件)
1 insertions:插入了一行内容(我在test文件中输入了一行话)
这样我们就成功在Git仓库中添加提交了一个文件。
查看文件状态
有时候在我们修改完一个文件以后可能过一阵子就忘了是哪个文件被改动过,此时就需要运行以下命令来让我们查看当前仓库的状态
git status
根据红字提示可以看到test.txt已经被被修改过了
尽管git status可以查看哪些文件被修改,但还看不到被修改的内容,此时我们通过
git diff 文件名
就可以查看文件修改的内容了
Git版本管理
Git身为一个优秀的版本控制系统,它能够让我们查看每一次提交的记录。我们通过
git log
来查看所有提交的版本记录,git log命令显示从最近到最远的提交日志。如过项目很大版本过多的话,记着按q键可以退出日志。
有些时候一些特别大的合作开发项目,提交版本很多,如果看着很难受,可以在git log后面加上–pretty=oneline参数
git log --pretty=oneline
版本回退
第一种方法(知道要回退到哪个版本)
在项目管理中,有可能你提交的最新版本项目出错,此时就需要你回退一版本,这时候可以选择
git reset
但是,Git 必须知道当前版本是哪个版本,在 Git 中,用HEAD表示当前版本,上一个版本就是HEAD^,
上上一个版本就是HEAD^^,当然往上100个版本就可以写成HEAD~100。
注意: 在windows的cmd控制台下操作git,想要回滚到上一次提交,输入git reset --hard HEAD^会显示more?这是因为cmd控制台中换行符默认是^,而不是\ ,所以它的more?的意思是问你下一行是否需要再输入,而^ 符号就被当做换行符而被git命令忽略掉了。
解决方法有如下几种:
加引号:git reset --hard “HEAD^”
换成:git reset --hard HEAD~1
或者采用git bash,powershell等就不会出现这种问题了。
第二种方法(不知道要回退到那个版本)
当然除了这种方法以外,有时候我们可能不记得是哪个版本了,此时你可以通过git log查询想要退回的版本id
Git 的版本回退速度非常快,是因为 Git 在内部有个指向当前版本的HEAD指针
恢复新版本
当你回退到旧版后悔后又想使用新版本,可以通过
git reflog
命令来查看每一次命令
查到新版id后,通过git reset --hard id 回到新版本。