标签:文件 显示 git 操作命令 log -- Git 提交
各种操作系统上建立git项目
在 Linux 上:
# cd /home/user/my_project
在 macOS 上:
# cd /Users/user/my_project
在 Windows 上:
# cd /c/user/my_project
设置执行:(创建一个名为 .git 的子目录)
# git init
# git init [项目名称]
文件提交的过程
文件提交
# git add *.c
# git add LICENSE
提交暂存区到仓库区
# git commit -m 'initial project version'
# git commit -v
重置暂存区的指定文件,与上一次commit保持一致,但工作区不变
# git reset 文件
重置暂存区与工作区,与上一次commit保持一致
# git reset --hard
删除工作区文件,并且将这次删除放入暂存区
# git rm 文件名
停止追踪指定文件,但该文件会保留在工作区
# git rm --cached [file]
改名文件,并且将这个改名放入暂存区
# git mv [改名前文件] [改名后文件]
下载一个项目和它的整个代码历史
# git clone [url]
# git clone https://github.com/libgit2/libgit2 新的目录名
显示Git的配置
显示当前的Git配置
# git config --list
编辑Git配置文件
# git config -e --global
检查当前文件状态
# git status
列出所有本地分支
# git branch
新建一个分支,但依然停留在当前分支
# git branch [分支名称]
切换到该分支
# git checkout [分支名称]
合并指定分支到当前分支
# git merge master
删除分支
# git branch -d 分支名
GIt标签管理
列出所有标签
# git tag
设置标签
# git tag 标签名
查看标签
# git show 标签名
删除标签
# git tag -d 标签名
Git远程管理
增加一个新的远程仓库,并命名
# git remote add [新仓库名称] [url]
远程仓库的重命名与移除
# git remote rename 现在仓库名 重命名仓库名
查看提交历史
# git log
# git log --stat
# git log --pretty=oneline
# git log --pretty=format:"%h - %an, %ar : %s"
# git log --pretty="%h - %s" --since="2021-08-01" --before="2021-08-21"
git log 的常用选项
选项 说明
-p 按补丁格式显示每个提交引入的差异。
--stat 显示每次提交的文件修改统计信息。
--shortstat 只显示 --stat 中最后的行数修改添加移除统计。
--name-only 仅在提交信息后显示已修改的文件清单。
--name-status 显示新增、修改、删除的文件清单。
--abbrev-commit 仅显示 SHA-1 校验和所有 40 个字符中的前几个字符。
--relative-date 使用较短的相对时间而不是完整格式显示日期(比如“2 weeks ago”)。
--graph 在日志旁以 ASCII 图形显示分支与合并历史。
--pretty 使用其他格式显示历史提交信息。可用的选项包括 oneline、short、full、fuller 和 format(用来定义自己的格式)。
--oneline --pretty=oneline --abbrev-commit 合用的简写。
限制 git log 输出的选项
选项 说明
-<n> 仅显示最近的 n 条提交。
--since, --after 仅显示指定时间之后的提交。
--until, --before 仅显示指定时间之前的提交。
--author 仅显示作者匹配指定字符串的提交。
--committer 仅显示提交者匹配指定字符串的提交。
--grep 仅显示提交说明中包含指定字符串的提交。
-S 仅显示添加或删除内容匹配指定字符串的提交。
生成一个可供发布的压缩包
# git archive
标签:文件,显示,git,操作命令,log,--,Git,提交 来源: https://www.cnblogs.com/jdbinfo/p/15147504.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。