一、 Git 分区

GIT常见命令_推送

二、 基础命令

命令

作用

备注

git init <目录>

在指定目录下创建一个

空的仓库


git clone <仓库>

克隆一个指定仓库到本

既可以克隆远程仓库(远程仓库 url 链接),也可以克隆本地仓库(本地仓库路径)

git add <目录/文件>

将指定目录/文件的所

有修改加入下一次commit 中

仅将涉及的修改从工作

区提交到暂存区(生成一个 tree/blob 对象存入objects,使用生成的hash 值更新暂存区中该目录/文件的指针)由于会生成文件快照,频繁使用 git add 命令会占用大量本地仓库的空间,对于重复 add 的文件,只有最后一次会被 commit,其他的都是无用的。

git commit -m "<信息>"

提交暂存区的修改,使

用指定信息作为提交信息

将暂存区的修改提交到

版本库,生成 commit 对象

git status

显示哪些文件未跟踪、

未被 staged 等


git log

显示全部 commit 历史

每个 commit 会保存父

提交的指针 parent,因此可以看到早于 HEAD 的所有 commit 信息,但是不能查看晚于 HEAD 的commit 信息(可借助 gitreflog 查看)

git push <远程> <分支>

将本地指定分支推送到

远程

把本地库的内容推送到远程,如果远程没有对应分支,将自动在远程创建指定分支;如果远程库是空的,第一次推送时可以加上 -u 参数,把本地库指定分支与远程库指定分支关联起来

git pull <远程>

从指定<远程>抓取所有

分支的commit 并合并到本地仓库

相当于 git fetch & git

merge 的结合,因此如果远程与本地提交间有冲突,需要先解决冲突,否则会 merge 失

git branch <分支>

创建分支


git checkout <分支>

切换到指定分支

加上-b 参数相当于 git

branch <分支> 与 gitcheckout <分支>的结合,即创建并切换分支

git stash

将工作区和暂存区的内

容保存到堆栈中

保存到堆栈中的数据可

以跨分支恢复,不一定要在原来的分支上

git stash pop

恢复栈中的第一个内

容,删除该记录


git stash apply <stash>

恢复指定的 stash 记录

不会删除该记录

侵删