git相关命令

本文详细介绍了Git的各种常用命令,包括配置信息查看、帮助文档查阅、文件管理、提交操作、克隆与远程仓库交互、历史记录查看、提交撤销与重做等。通过这些命令,读者可以全面掌握Git的基本操作和高级技巧,实现高效版本控制。
摘要由CSDN通过智能技术生成

git相关命令

1.git config --global user.name 查看配置的用户名
2.git config --global user.email 查看配置的邮箱
3.git help 阅读它们的使用帮助,例如学习config 命令可以怎么用,git help config
4.git config --list 检查已有的配置信息
5.git config --global merge.tool <名称>
在解决合并冲突时使用哪种差异分析工具 ,
比如要改用 vimdiff 的话: git config --global merge.tool vimdiff,
还有 kdiff3,tkdiff,meld,xxdiff,emerge,vimdiff,gvimdiff,ecmerge,和 opendiff 等合并工具
6.git init 现有的某个项目开始用 Git 管理
7.git add 文件名 将某文件纳入git管理跟踪
8.git commit 文件名 提交
9.git clone url 克隆项目
例如:git clone git://github.com/dql/demo.git ,就会在当前目录下创建一个名为demo的目录
克隆时重新命名项目目录名称:git clone git://github.com/dql/demo.git newDemo ,就会创建一个名为newDemo 的目录
注意:Git 支持许多数据传输协议。现在的例子使用的是 git:// 协议,不过也可以用 http(s)😕/ 或者 user@server:/path.git 表示的 SSH 传输协议。
10.git status 确定哪些文件当前处于什么状态
11.vim README 创建新的文件README
12.cat .gitignore
*.[oa]
*~
创建一个名为 .gitignore 的文件,列出要忽略的文件模式
第一行告诉 Git 忽略所有以 .o 或 .a 结尾的文件
第二行告诉 Git 忽略所有以波浪符(~)结尾的文件
例如
# 此为注释 – 将被 Git 忽略
# 忽略所有 .a 结尾的文件
.a
# 但 lib.a 除外
!lib.a
# 仅仅忽略项目根目录下的 TODO 文件,不包括 subdir/TODO
/TODO
# 忽略 build/ 目录下的所有文件
build/
# 会忽略 doc/notes.txt 但不包括 doc/server/arch.txt
doc/
.txt
13.git diff 查看尚未暂存的文件更新了哪些部分
此命令比较的是工作目录中当前文件和暂存区域快照之间的差异,也就是修改之后还没有暂存起来的变化内容。
14.git diff --cached(Git 1.6.1 及更高版本还允许使用 git diff --staged) 查看已经暂存起来的文件和上次提交时的快照之间的差异
15.git config --global core.editor 命令设定你喜欢的编辑软件
16.git commit -m “提交说明” 提交时使用-m后加说明
17.git commit -a -m ‘说明’ ,加上 -a 选项,Git 就会自动把所有已经跟踪过的文件暂存起来一并提交,从而跳过 git add 步骤。
18.移除文件,要从 Git 中移除某个文件,就必须要从已跟踪文件清单中移除(确切地说,是从暂存区域移除),然后提交。可以用 git rm 命令完成此项工作,并连带从工作目录中删除指定的文件,这样以后就不会出现在未跟踪文件清单中了。
①工作目录中删除文件:第一步,rm 文件名称;第二步,git rm 文件名称。
:若删除之前修改过并且已经放到暂存区域的话,则必须要用强制删除选项 -f
②只是在Git仓库删除,即从缓存区域移除,而工作目录中仍保留,使用:git rm --cached 文件名称,也可以使用glob模式,进行匹配,例如:
git rm poject/*.db,不加反斜杠的话不会递归匹配,但这个已经指定文件目录为project下以db结尾的文件,所以加不加反斜杠斜杠一样。但git rm *,# 会递归匹配,删除当前以及子目录所有以#结尾的文件。
19.移动文件:git mv
对文件改名:git mv aaa.txt ccc.word,将文件啊。aaa.txt 重命名为 ccc.word,此过程其实是运行了三个命令: 第一,mv aaa.txt ccc.word;第二,git rm aaa.txt;第三,git add ccc.word。
20.查看历史提交:git log 展示所有的更新,最新的在最上面
git log -p -n 其中-p展开显示每次提交的内容差异,用 -n 则仅显示最近的n次更新
git log --stat 仅显示简要的增改行数统计
–pretty 选项,可以指定使用完全不同于默认格式的方式展示提交历史。比如用 oneline 将每个提交放在一行显示,这在提交数很大时非常有用。另外还有 short,full 和 fuller 可以用,展示的信息或多或少有些不同
例如:① git log --pretty=oneline 将每个提交放在一行显示
② git log --pretty=format:"%h - %an, %ar : %s" 按照要求的记录格式显示
格式占位符写法及其代表的意义
选项 说明
%H 提交对象(commit)的完整哈希字串
%h 提交对象的简短哈希字串
%T 树对象(tree)的完整哈希字串
%t 树对象的简短哈希字串
%P 父对象(parent)的完整哈希字串
%p 父对象的简短哈希字串
%an 作者(author)的名字
%ae 作者的电子邮件地址
%ad 作者修订日期(可以用 -date= 选项定制格式)
%ar 作者修订日期,按多久以前的方式显示
%cn 提交者(committer)的名字
%ce 提交者的电子邮件地址
%cd 提交日期
%cr 提交日期,按多久以前的方式显示
%s 提交说明
用 oneline 或 format 时结合 --graph 选项,可以看到开头多出一些 ASCII 字符串表示的简单图形
git log --pretty=format:"%h %s" --graph在这里插入图片描述
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(后跟指定格式)。
限制输出长度:git log --since 和 --until
例如 git log --since=2.weeks 列出所有最近两周内的提交
选项 说明
-(n) 仅显示最近的 n 条提交
–since, --after 仅显示指定时间之后的提交。
–until, --before 仅显示指定时间之前的提交。
–author 仅显示指定作者相关的提交。
–committer 仅显示指定提交者相关的提交。
Git 仓库中,2008 年 10 月期间,Junio Hamano 提交的但未合并的测试脚本;
git log --pretty="%h - %s" --author=gitster --since=“2008-10-01”
–before=“2008-11-01” --no-merges – t/
21.git commit --amend 撤消刚才的提交操作,可以使用 --amend 选项重新提交
22.git reset HEAD file 取消暂存文件
git checkout – file 取消对文件的修改
23.git remote 查看当前配置有哪些远程仓库
git remote -v 显示对应的克隆地址
24. git remote add [shortname] [url] 添加一个新的远程仓库,可以指定一个简单的名字
25. git fetch remote-name 从远程仓库抓取数据
git pull 命令自动抓取数据下来,然后将远端分支自动合并到本地仓库中当前分支
26. git push remote-name branch-name 推送数据到远程仓库
27. git remote show origin 查看远程仓库信息
28. git remote rename 旧名称 新名称 远程仓库的重命名
29. git remote rm 名称 远程仓库的删除
后续再加…

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值