常用命令
本地提交
git push -u origin master
// push 推送
// -u 关联,加上以后,后续提交时可以直接使用git push
// origin 远端仓库的别名
// master 本地
git push origin --all: 推送本地仓库的全部分支到远程仓库
本地克隆并拉取仓库
git clone https://github.com/zard999/note.git: 拉取仓库
git pull: 拉取更新本地仓库
提交操作
-
git status: 查看状态- 红色代表工作区和暂存区不一致
- 绿色代表暂存区和仓库区的当前版本不一致
- Untracked files: 未跟踪的文件(新增的文件)
- modidied: 修改了某些文件
- deleted: 删除了某些文件
-
git add -A(git add .或者git add *): 提交某个文件或者全部文件到暂存区 -
git commit -m'注释': 提交修改并注释 -
git commit -am: 自动把所有已经跟踪过的文件暂存起来一并提交,跳过 git add
撤销操作
git restore.(或者git restore): 撤销工作区的改动到上一次提交git restore --staged .: 撤销提交到暂存区(如果是工作区新增文件的撤销,直接删除就可以)
删除操作
git rm fileName: 删除暂存区和工作区的某个文件(然后直接 commit 提交,仓库区的最新版本就没有这个文件了)git rm --cached fileName: 删除暂存区的文件,此时工作区和暂存区,仓库区和暂存区都不一致git rm fileName -f: 强制删除文件(当工作区和暂存区或仓库不一致的时候,强制删除)
重命名和移动操作
git mv 01.js 02.js: 重命名 01.js 为 02.jsgit mv 01.js js/: 移动 01.js 文件位置到 js 文件夹中git mv 01.js js/02.js: 移动 01.js 文件到 js 文件夹中,并重命名为 02.js
对比差异
git diff: 查看工作区与暂存区的差异(不显示删除或新增文件)显示做了哪些修改
// 解读结果
Windows% git diff
// 进行比较的是,index.html(即变动前)index.html(即变动后)
diff --git a/index.html b/index.html
// 表示两个版本的git哈希值
index 16158b4..61045cd 100644
// "---"表示变动前的版本
--- a/index.html
// "+++"表示变动后的版本
+++ b/index.html
// 代表的意思是源文件的1-2行与目标文件的1-5行有差异 下面才是具体的差异信息
@@ -1,2 +1,5 @@
// -红色部分表示减少的部分,+绿色部分表示增加的部分
index.html
-no 1
+
+
+
+再次修改
// \ No newline at end of file 最后一行没有换行
\ No newline at end of file
git diff --cached: 查看暂存区与仓库的差异git diff a b: 比较两个版本之间的差异
历史版本及回滚
查看历史版本
git log: 查看所有的提交,用下方向键控制向下查看,按 q 退出git log --oneline: 查看所有提交的简略信息git log p: 查看所有提交及每次的差异
回滚
git reset --hard hash: 仓库回退到某个版本,重置工作区和暂存区git reset --mixed hash: 仓库回退到某个版本,重置暂存区git reset --soft hash: 仓库回退到某个版本git reflog: 查看所有的日志操作(包括 commit 和 reset 的操作)
配置忽略文件
- 只有本地有当前文件:
- 直接创建一个
.gitignore文件,里边书写忽略的文件名或文件夹即可
- 直接创建一个
- 已经被仓库管理的文件想要忽略
- 首先让仓库和暂存区不在管理这个文件
git rm --cached fileName: 把暂存区的这个文件删除,在 commit 提交到仓库,此时当前文件在工作区就是一个新增文件了,然后再去.gitignore 中配置忽略即可
分支操作
git branch: 查看所有分支git branch name: 创建一个分支git checkout name: 提交当前分之后,再切换分支git checkout -b name: 创建并切换分支git merge name: 合并某个分支git branch -d name: 删除某个分支
本地配置远程仓库提交地址
git remote add origin https://github.come/zard999/note.git
// 远端仓库管理 添加一个远程仓库的url别名
// add 添加
// origin 远端仓库的别名(git remote -v 可以查看仓库的所有别名)
// https://github.com/zard999/note.git 仓库地址
// git remote 可以添加删除重命名等操作(使用git remote -h查看)