git基本操作介绍-凯发app官方网站

凯发app官方网站-凯发k8官网下载客户端中心 | | 凯发app官方网站-凯发k8官网下载客户端中心
  • 博客访问: 263858
  • 博文数量: 90
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 665
  • 用 户 组: 普通用户
  • 注册时间: 2018-10-15 14:13
个人简介

搭建一个和linux开发者知识共享和学习的平台

文章分类

全部博文(90)

文章存档

2024年(4)

2023年(24)

2022年(27)

2019年(8)

2018年(27)

相关博文
  • ·
  • ·
  • ·
  • ·
  • ·
  • ·
  • ·
  • ·
  • ·
  • ·

分类: linux

2024-06-17 09:57:47

git 数据工作流程如下:


(1)暂存文件

可以使用以下命令来暂存已修改的文件,命令最后需要指定要暂存的文件名称:


git add <filename> 

如果想要将所有未跟踪和修改的文件添加到暂存区,可以执行以下命令:


git add . 

此时分支的状态如下:


(2)提交暂存

可以使用以下命令将暂存区的文件修改提交到本地仓库,


git commit -m "meaasge" 

其中-m参数表示message日志信息,参数后面要加一个日志信息,用双引号括起来。

此时分支的状态如下:


如果上次提交暂存的messge写错了怎么办呢?可以使用使用以下命令来更新提交,而不需要撤销并重新提交:

git commit --amend -m <message> 

如果有一个新的文件修改,也想提交到上一个commit中,可以使用以下命令来保持相同的提交信息:


git add . git commit --amend --no-edit 

(3)存储更改

假如我们正在开发迭代功能,但是还没开发完。这时有一个紧急的bug需要修复上线。可能就需要切换到一个hotfix分支去修复bug。这时对于开发了一部分的功能创建提交是没有逻辑意义的。可以使用以下任一命令来存储修改的内容:


git stash git stash push git stash push -m "" 

该命令回保存所有未提交的更改并恢复到上次提交时存储库的状态。

当想再次继续开发此功能时,就可以使用以下命令检查所有存储:


git stash list 

这时终端中就会显示带有时间戳的所有已经暂存的列表。可以使用以下任一命令来取回所有的更改:


git stash apply git stash pop 

apply 和 pop 之间的区别在于,pop 应用了 stash 中的更改并将其也从 stash 中删除,但 apply 即使在应用后仍将更改保留在 stash 中。

可以使用以下任一命令应用存储列表中的第 n 个存储:


git stash apply stash@{n} git stash apply <n> 

整个过程的输出如下:


(4)合并指定提交

在不同分支之间进行代码合并时,通常会有两种情况:一种情况是需要另一个分支的所有代码变动,那么就可以直接合并(git merge),另一种情况是只需要部分代码的变动(某几次提交),这时就可以使用以下命令来合并指定的提交:


git cherry-pick <commit hash> 

建议添加 -x 标志,因为它会生成标准化的提交消息,通知用户它是从哪里pick出来的:


git cherry-pick -x <commit hash> 

那么这个commit hash是从哪里来的呢?可以在需要被合并的分支上执行以下命令:


git log 

这时终端就会显示出所有的提交信息:


这里黄色文字中commit后面的部分就是commit hash,复制即可。

(5)检查提交

git允许我们在本地检查特定的提交。输入以下命令就可以查看有关当前提交的详细信息:


git show 

输出的结构如下,可以看到,它显示出了上次提交的commit id、作者信息(邮箱和姓名)、提交日期、commit message、代码diff等:


还可以使用head~n语法或提交哈希来检查过去的提交。使用以下命令就可以获取往前数的第三次提交的详细信息:

git show head~3 

除此之外,还可以添加一个--oneline标志,以简化输出信息:


git show --oneline 

这样提交信息就简洁了很多:


(6)查看贡献者

可以使用以下命令来返回每个贡献者的commit次数以及每次commit的commit message:


$ git shortlog 

其可以添加两个参数:

  • s:省略每次 commit 的注释,仅仅返回一个简单的统计。

  • n:按照 commit 数量从多到少的顺利对用户进行排序。

加上这两个参数之后就可以看到每个用户中的提交次数以及排名情况:


git shortlog -sn 

这样就会显示出该项目所有贡献者的commit次数,从上到下依次减小:


除此之外,还可以添加一个--no-merges标志,以忽略合并提交的次数:

 git shortlog -sn --no-merges 

(7)仓库提交历史

git rev-list 用于列出仓库中的提交(commit)记录。它按照时间倒序显示提交记录,并可以根据不同的选项和参数进行筛选和排序。

下面是git rev-list的一些基本用法:

  1. 列出所有提交记录:


git rev-list 

这将显示仓库中所有的提交记录,按照时间倒序排列。每个提交记录都有一个唯一的sha-1哈希值作为标识。

  1. 列出某个分支的提交记录:


git rev-list <branch-name> 

替换为你要查看的分支的名称。这将显示该分支上的所有提交记录。

  1. 列出某个提交之后的提交记录:


git rev-list <commit-id>.. 

替换为你要查看的提交的sha-1哈希值。这将显示该提交之后的所有提交记录。

  1. 列出两个提交之间的提交记录:


git rev-list <commit-id1>..<commit-id2> 

替换为你要查看的两个提交的sha-1哈希值。这将显示从之间的所有提交记录。

  1. 列出某个文件的所有提交记录:


bash复制代码 git rev-list -- <file-path> 

替换为你要查看的文件的路径。这将显示涉及该文件的所有提交记录。

(8)添加注释或备注

git notes允许用户为git对象(如提交、树、标签等)添加注释或备注信息。这些注释信息是以键值对的形式存储的,其中键是一个唯一的引用,而值则是与该引用关联的注释内容。

要使用git notes,可以按照以下步骤进行操作:

  • 添加注释:使用git notes add -m "your note message"

网站地图