文章主要解释说明git
相关的基础功能,包含仓库初始化、状态查询、代码追踪管理、代码比对、基础日志查询等。
初始化
# 初始化仓库
git init #初始化项目 生成 .git 目录
# 状态查询
git status #查看当前状态,看提示的颜色和标志,区分文件需要的操作、待 push 的 commit
-s # git status 简化 注意前面的字母标志,分为2列,第一列是对staging 区域而言,第二列是对working目录而言。同时注意字母的颜色,区分当前文件的状态。
追踪
git add #将文件添加到暂存区,非常重要的一个操作,这样就可以实时的对你的文件进行跟踪了。
git add <filename> # 将 filename 文件添加到暂存区
git add . # 将所有文件添加到暂存区
git add -A # 添加所有改动文件到暂存区( 不常用 )
git add -u # 添加有改动且已追踪的文件( 不常用 )
git clean
-n # 并不删除操作,只显示将被清理的文件列表
-f # 删除文件, 但不会动 .gitignore 里标记的
-d # 删除目录, 但不会动 .gitignore 里标记的
-X # 仅删除 .gitignore 里标记的文件
-df # 删除未跟踪的文件和文件夹
比较
git diff # 比较文件,默认是工作区和暂存区文件比较,不加参数是所有文件
git diff --cached # 暂存区和本地仓库比较
git diff head # 工作区和本地仓库比较
git diff filename # 工作区和暂存区 filename 文件的对比,可以加路径。
git diff <branch> filename # 比较当前分支和 branchName 分支的 filename 的文件
git diff <remote/branch> <filename> # 比较远程主机 romoteName 的 branchName 分支的filename文件比较。
git diff dev master filename # 比对当前 dev 与 master 两个分支代码的差异
git diff --name--only <baranch | commitId | HEAD@{num}> # 输出当前与指定版本的差异文件
git diff --ignore-blank-lines --ignore-all-space --ignore-cr-at-eol # 忽略空格 换行符等比对
提交
git commit -m <message> # 提交到本地仓库
git commit filename -m <message> # 提交指定文件,可以是文件目录,多文件用空格隔开
git commit --amend -m <message> # 合并提交
git commit -a -m <message> # 添加到暂存区并提交到本地仓库(不建议使用)
git commit -s(--signoff) -m <message> # 标记提交的节点,记录提交人
日志
git shortlog # git log 简化
git log # 列出提交的详细信息
-p # 查看历次的 log 信息及更改情况
-p -number # 查看距现在最近的 number 次的 提交的信息及更改情况
--stat -number # 查看log显示文件修改情况
--pretty=oneline # 查看提交的版本 ID
--author="author" # 查看 author 提交的记录
--oneline --graph # 查看分支图
git show commitid/tag # 查看记录
git log --oneline | wc -l # 查看一共有多少提交记录
附录
创作不易,欢迎打赏。你的支持,是我持续创作的动力哦。如果文章表述不清或错误,欢迎大家留言。我会及时反馈给大家,希望帮助到大家。