首先,在命令行输入git
,查看是否安装Git
$git The program 'git' is currently not installed. You can install it by typing: sudo apt-get install git
若未安装,则在Ubuntu Linux下安装
$sudo apt-get install git
在[官网](Git - Downloads (git-scm.com))下载即可,然后安装默认选项安装。
在开始菜单里面找到“Git”->“Git Bash”,出现下面这个窗口,说明Git安装成功!
安装成功之后,还需要完成最后一步设置,在刚才那个窗口输入:
$ git config --global user.name "Your Name" $ git config --global user.email "email@example.com"
注:(1)注意“name”和“email”后的空格;
(2)
–global
这个参数表示所有这台机器上的Git仓库都会使用这个配置。
参考链接:安装Git - 廖雪峰的官方网站 (liaoxuefeng.com)
repository
理解为一个目录,里面的所有文件都会被Git管理,并可以追踪每个文件的修改、删除的历史,可以在未来某个时刻复原。
所以,创建一个版本库和创建一个目录类似。
creat a repository
两种方式,第一种在文件管理器
中选择一个文件夹,右键新建一个文件夹“learngit”;
第二种方式,在Git Bash
下输入以下命令:
$ cd /d/code/Git //跳转到指定位置(绝对路径) $ mkdir learngit //创建一个空目录 $ cd learngit $ pwd //显示当前目录 /d/code/Git/learngit
git init
让当前目录变成可以被Git管理的仓库$ git init Initialized empty Git repository in D:/code/Git/learngit/.git/
当前目录下多了一个.git
的空目录,这个目录是Git用来追踪管理版本库的,千万别修改其中的文件,否则会破坏Git仓库。
如果没有看见该目录,可以利用
ls -ah
命令看见
Git只能管理文本文件,包括TXT文件,网页,代码,不能管理二进制文件,例如视频、图片、 word等。
Windows下不要使用记事本编辑任何文本文件。建议使用VScode。
添加文件
readme.txt
文件,内容任意。但一定要放在learngit
或者其他Git仓库下,才能被Git找到。
git add
,把文件添加到仓库:$ git add readme.txt
执行上面的命令,后没有任何提示就表示成功。
git commit
,把文件提交到仓库:$ git commit -m "worte a readme file" [master (root-commit) 5e54588] worte a readme file 1 file changed, 2 insertions(+) create mode 100644 readme.txt
-m
后面表示本次提交的说明,能表示你改动了什么。建议一般情况下输入-m "X"
。
得到的提示中1 file changed
表示一个文件被改动;2 insertions
插入了两行内容。
一次commit可以提交多个文件,可以先add多个文件,再同时提交
指令总结
git add <filename>
git commit -m <message>
git status
查看仓库当前状态
可以告诉我们是否被修改、修改是否被提交
git diff <filename>
查看具体修改内容(只能在提交前查看)
git add <filename>
提交修改
git commit -m ""
提交新文件
git log
查看提交日志,回退到哪一个版本(版本库内的)(可以加上--pretty=oneline)
可以显示版本号和具体提交内容。其中HEAD
表示当前版本,HEAD^
表示上一个版本,HEAD^^
表 示上上个版本。也可以用HEAD~100
表示。
git reset --hard HEAD<>
回退到哪一个版本。
git reset --hard commit id
回退到哪一个版本。(写前四位就可以)
git reflog
查看命令历史,回到未来的哪一个版本
撤销修改
git checkout -- <filename>
撤销修改,回到git commit 或者 git add的状态(提交到缓存区之前)
git reset HEAD <file>
撤销缓存区的修改,但仍需再checkout一次
删除文件
在文件管理器中删除或者rm <filename>
之后,在版本库内删除
git rm <filename>
git commit -m "remove <filename>"
还原文件(未被添加到版本库的文件不能被恢复,会丢失工作区内的修改内容)
git checkout -- <filename>
其实使用版本库里的版本替代工作区的版本