1.安装
这个就不必细说了
2.安装完后还要进行一步设置。
在命令行输入:
git config --global user.name "Your Name"
git config --global user.email "email@example.com"
3.创建版本库
切换到目标文件夹下:
git init
4.git add <file>添加文件到仓库
git commit -m<message> 提交所以已经添加的文件
git status 查看仓库当前状态
git diff <file> 查看difference。
git log 查看历史记录,可以加上 --pretty=oneline 这个参数赖过滤一下。前面的大串字符串是每次commit的版本号。在git中,用HEAD表示当前版本。上个版本就是HEAD^,上上个就是HEAD^^,往上100个版本就是HEAD~100.
git reset --hard HEAD^.表示回退到上一个版本。
git reset --hard 版本号前几位 :这样还可以返回到回退之前的版本(只要当前窗口还没关,往上找就可以了。)
git reflog :这个来记录每一次的命令。还可以根据这个来找commit的版本号。(真牛逼)
git push origin master. 向远程origin仓库push master分支。
5.工作区和暂存区
工作区(Working Directory):就是电脑里能看到的目录。有隐藏目录.git。
版本库(Repository):存了很多东西,其中最重要的就是stage(或者叫index)的暂存区,还有Git为我们自动创建的第一个分子master,以及指向master的一个指针叫HEAD。
6.管理修改
为什么Git比其他版本控制系统设计得优秀,因为Git跟踪并管理的是修改,而非文件。
git commit 只会commit add到暂存区的文件
7.撤销修改
git checkout --<file> :把该文件在工作区的修改全部撤销,有两种情况:
(1)文件修改后,还没有被add到暂存区,现在撤销修改就回到和repository一样的状态
(2)文件修改后,以及添加到暂存区,又作了修改。现在撤销修改就回到添加到暂存区后的状态。
总之,就是让这个文件回到最近一次git commit
或git add
时的状态。
场景1:当你改乱了工作区某个文件的内容,想直接丢弃工作区的修改时,用命令git checkout -- file
。
场景2:当你不但改乱了工作区某个文件的内容,还添加到了暂存区时,想丢弃修改,分两步,第一步用命令git reset HEAD <file>
,就回到了场景1,第二步按场景1操作。
场景3:已经提交了不合适的修改到版本库时,想要撤销本次提交,参考版本回退一节,不过前提是没有推送到远程库。
8.删除文件
rm <file>,这是直接在文件管理器中把没用的文件删了。
这时,git status 会告诉你,哪些文件被删除了。
现在你有两个选择,一是确实要从版本库中删除该文件,那就用命令git rm
删掉,并且git commit。
另一种情况是删错了,因为版本库里还有呢,所以可以很轻松地把误删的文件恢复到最新版本:
git checkout -- text.txt.
ps:
1.如果你用的rm删除文件,那就相当于只删除了工作区的文件,如果想要恢复,直接用git checkout -- <file>就可以
2.如果你用的是git rm删除文件,那就相当于不仅删除了文件,而且还添加到了暂存区,需要先git reset HEAD <file>,然后再git checkout -- <file>
3.如果你想彻底把版本库的删除掉,先git rm,再git commit 就ok了.
来源:https://www.cnblogs.com/jdhdevelop/p/10739580.html