Git命令
分类:
文章
•
2024-12-27 23:41:58
1.创建版本库
- 打开到要创建git版本库的目录,运行以下命令
- git init
2.文件新建+状态查看+新增+提交+新增文件内容
- 新建文件:touch
- 状态查看:git status (在本地工作区:文件名为红色;在git暂存区:文件名为绿色;在git分支上:)
- 新增:git add 把文件纳入Git管理,实际是把本地文件修改添加到暂存区
- 提交:git commit -m “file commit” 把暂存区的所有内容提交到当前分支(创建Git版本库时,Git自动为我们创建了唯一一个master分支,所以commit就是往master分支上提交更改)(可以简单理解为,需要提交的文件修改通通放到暂存区,然后,一次性提交暂存区的所有修改。一旦提交完后,如果你又没有对工作区做任何修改,那么工作区就是“干净”的。即:nothing to commit (working directory clean))
- 新增文件内容:vi 与linux命令一样
3.日志+版本号+对比不同
- 查看日志:git log
- 查看日志(一行显示):git log --pretty=oneline
- 查看版本的具体操作(包括版本回退等记录):git reflog
- 查看内容:cat
- 查看暂存区与本地库的版本差别:git diff
4. 版本回退+版本穿梭+版本撤销
- 版本退回一步:git reset --hard HEAD^
- 版本退回两步:git reset --hard HEAD^^
- 版本退回n步:git reset --hard HEAD~n
- 退回到具体某个版本:先查看版本的id号:git reflog 退回到具体版本:git reset --hard <版本的7位id号>
- 新建过未add撤销: git checkout –
- 撤销已add未commit:先git reset HEAD 再 git checkout –
- 撤销已add已commit: git reset –hard HEAD^
5. 删除文件,删完提交
- 删除b.txt文件:git rm -f b.txt (此时git status查看,b.txt在暂存区还有(绿色))
- 确认删除b.txt文件:git commit -m “delete b.txt”
- 从暂存区恢复b.txt文件:先执行命令:git restore --staged b.txt 再执行命令:git restore b.txt
7. 分支(查看+新建+切换+合并(分支名)+删除)
- 查看分支:git branch
- 新建dev分支:git branch dev
- 切换到dev分支:git checkout dev
切换到dev分支时,会将自己的文件自动拷贝到dev分支;如果切换到主分支master,则不会拷贝自己的文件到主分支。
- 新建test分支同时切换到test分支:git checkout -b test
- 合并(目前在master主分支,要合并dev分支):git merge dev
- 删除dev分支(自己要切换到主分支才能删):git branch -d dev
8. 版本冲突
版本冲突分为:内容冲突、逻辑冲突、树冲突
遇到版本冲突解决步骤:
- 查看:cat b.txt
- 编辑:vi b.txt
- git add b.txt
- git commit -m “conflict merge”
5. 理解工作区+版本库+暂存区
- 工作区(Working Directory):就是你电脑本地硬盘目录
- 版本库(Repository):工作区有个隐藏目录.git,它就是Git的本地版本库
- 暂存区(stage):一般存放在"git目录"下的index文件(.git/index)中,所以我们把暂存区有时也叫作索引(index)。
- Git为我们自动创建的第一个分支master,以及指向master的一个指针叫HEAD