工作区域
workspace,工作区
index,暂存区
repository,版本库
remote,远程仓库
clone
git clone [远程仓库地址] -b [分支名] [本地存放路径]
- 如果不指定
-b
参数,则会克隆默认分支 - 如果不指定存放路径,则会使用仓库默认的名字
--depth=1
只克隆最后一次提交的版本,不克隆整个仓库的提交历史,可加快克隆速度,可节省磁盘空间
checkout
git checkout -b [本地分支名] [远程分支名]
# 比如
git checkout -b dev origin/dev
pull
git pull origin [branch]
origin
远程仓库的别名,如[email protected]/xxx.git,可以通过git remote -vv
查看这个origin代表哪个远程仓库branch
远程仓库分支名字
所以这个命令的意思就是,将远程仓库的[branch]分支和当前的本地分支(如:master)进行合并,pull命令=fetch+merge
删除分支
删除本地分支,-D强制删除
git branch -D <branch>
# 比如
git branch -D fix/authentication
删除远程分支
git push <remote> --delete <branch>
# 比如
git push origin --delete fix/authentication
submodule
-
克隆submodule
git clone <parent_repository_git_url> git submodule init # 这将检查父仓库中包含的submodule的最新提交,并将其检出到父仓库中指定的版本 git submodule update
-
添加submodule
git submodule add <submodule_git_url> <submodule_path>
-
提交代码
git add . git commit -am "message content"
添加仓库的upstream上游地址
fork了别人的仓库,需要将上游仓库指定为upstream,之后可以将上游仓库最新的代码更新到自己的仓库
-
添加
git remote add upstream <上游仓库git地址>
-
查看
git remote show upstream 或者 git remote -v
-
更新
git pull upstream master
upstream
上游仓库的git地址别名master
上游仓库的分支名
把已经提交到版本库的文件撤销
# 文件
git rm --cached <file_path>
# 文件夹
git rm -r --cached <dir_path>
git gc 命令
git gc
是 Git 中的一个命令,用于清理和优化 Git 仓库。它的全称是 "git garbage collection",主要用于回收不再需要的对象,压缩文件以节省空间,并提高性能。
主要功能:
- 清理无用的对象:删除那些不再被任何引用(如分支、标签等)所指向的对象。
- 压缩文件:将多个小的对象合并成一个大的对象,以减少磁盘空间的使用。
- 优化性能:通过整理对象存储,提高 Git 操作的效率。
使用方法:
在命令行中,进入你的 Git 仓库目录,然后运行:
git gc
Options:
- --prune=
:删除在指定日期之前的无用对象。例如,--prune=now 会立即删除所有无用对象。 - --aggressive:进行更深入的清理和压缩,可能会花费更多时间,但能获得更好的空间利用率。