我的操作系统:Windows
一、创建仓库
在本地创建新目录: mkdir 目录名
切换到该目录: cd 目录名
查看位置: pwd
将该目录初始成git管理的仓库: git init
二、添加文件并提交文件到仓库
(在该目录下新建一个.txt文件)
添加: git add 文件名
提交: git commit -m "*****备注**"
三、文件的修改提交
查看仓库当前状态: git status
查看修改前后有什么不同: git diff
查看历史记录,方便看我们提交过哪些: git log
四、文件版本回退
文件从当前版本中回退到以前的版本
首先,Git必须知道当前版本是哪个版本,在Git中,用HEAD
表示当前版本,也就是最新的提交0b52940da9962eac7a3e6fec58f52a102a4737c4(注意我的提交ID和你的肯定不一样),上一个版本就是HEAD^
,上上一个版本就是HEAD^^
,当然往上100个版本写100个^
比较容易数不过来,所以写成HEAD~100
。
回退版本: git reset --hard HEAD^
查看文件内容: cat 文件名
如果,你又反悔了,还是想回到最新的那个版本,只要git这个窗口没有关,可以向上查找那个序列id,然后
直接 git reset --hard (序列ID前几位)
如果你关掉了这个窗口,就使用:
查看命令历史: git reflog
来查看你使用过的每一次命令,从而找到这个commit ID
Git是如何跟踪修改的?
每次修改,如果没有git add
到暂存区,那就不会加入到commit
中。
五、文件内容 误修改 处理
1.如果在内容里写错了,但是还没有git add。有两种方法:
第一种,手动修改。第二种:使用撤销命令: git checkout --文件名
2.如果写错了,并已经使用了 git add命令
- 首先: git reset HEAD 文件名 (
git reset
命令既可以回退版本,也可以把暂存区的修改回退到工作区。当我们用HEAD
时,表示最新的版本.) - 然后撤销工作区的修改 : git checkout -- 文件名
- 然后可以使用git status 和 cat 文件名 检验是否撤销成功
六、删除文件
如果一个文件已经被提交到git版本库里面了,想要删除该文件:
删除工作区的文件:rm 文件名
*************仅仅是删除工作区的文件,版本库的文件不会被删除********
删除版本库的文件:
git rm 文件名
git commit -m "remove 文件名"
如果在工作区误删了该文件,版本库里面还有,就可以一键还原:
撤销删除: git checkout -- 文件名
七、本地与gitHub的远程仓库连接
与远程仓库连接: git remote add origin https://github.com/你的GitHub名字/learngit.git
将本地仓库的文件内容推送到远程仓库中: git push -u origin master
每次本地提交后,只要有必要,就可以使用命令git push origin master
推送最新修改.
八、克隆一个仓库到本地
要克隆一个仓库,首先必须知道仓库的地址,然后使用git clone
命令克隆。
Git支持多种协议,包括https
,但通过ssh
支持的原生git
协议速度最快。
在本地选择一个空目录,然后使用命令行:
git clone https://github.com/你的GitHub名字/learngit.git
并且想直接运行看代码,直接在vscode打开该项目:
cd 该目录
code .