设置和配置
获取和创建项目
基本快照
分支与合并
共享和更新项目
检查和比较
打补丁
调试
电子邮件
外部系统
服务器管理
指南
管理
底层命令
- 2.43.1 → 2.50.1 无更改
-
2.43.0
2023-11-20
- 2.10.5 → 2.42.4 无更改
-
2.9.5
2017-07-30
- 2.1.4 → 2.8.6 无变更
-
2.0.5
2014-12-17
描述
这不是终端用户希望运行的命令。永远不会。本文档旨在供研究 Porcelain 脚本和/或编写新脚本的人员使用。
git sh-setup 脚本片段旨在由其他 shell 脚本引用(使用 .
),以设置指向正常 Git 目录的一些变量和一些辅助 shell 函数。
在引用它之前,您的脚本应该设置一些变量;USAGE
(以及 LONG_USAGE
,如果有的话)用于定义 usage
() shell 函数给出的消息。SUBDIRECTORY_OK
可以设置,如果脚本可以从工作树的子目录运行(有些命令不行)。
该脚本片段设置 GIT_DIR
和 GIT_OBJECT_DIRECTORY
shell 变量,但**不会**将它们导出到环境中。
函数
- die
-
在向标准错误流发出提供的错误消息后退出。
- usage
-
使用用法消息退出。
- set_reflog_action
-
将
GIT_REFLOG_ACTION
环境变量设置为给定字符串(通常是程序名称),除非它已被设置。每当脚本运行一个更新引用的git
命令时,都会使用此字符串的值创建一个引用日志条目,以记录哪个命令更新了引用。 - git_editor
-
在给定文件上运行用户选择的编辑器(GIT_EDITOR、core.editor、VISUAL 或 EDITOR),但如果没有指定编辑器且终端是哑终端,则报错退出。
- is_bare_repository
-
向标准输出流输出
true
或false
,以指示仓库是否是裸仓库(即没有关联的工作树)。 - cd_to_toplevel
-
执行 chdir 命令到工作树的顶层目录。
- require_work_tree
-
检查当前目录是否在仓库的工作树内,否则退出。
- require_work_tree_exists
-
检查与仓库关联的工作树是否存在,否则退出。通常在调用 cd_to_toplevel 之前完成,如果没有工作树则无法执行此操作。
- require_clean_work_tree <action> [<hint>]
-
检查与仓库关联的工作树和索引没有对跟踪文件进行未提交的更改。否则,它会发出一个错误消息,格式为
Cannot
<action>:
<reason>.
<hint>,然后退出。例如require_clean_work_tree rebase "Please commit or stash them."
- get_author_ident_from_commit
-
输出可与 eval 配合使用的代码,用于为一个给定提交设置 GIT_AUTHOR_NAME、GIT_AUTHOR_EMAIL 和 GIT_AUTHOR_DATE 变量。
- create_virtual_base
-
修改第一个文件,使其只保留与第二个文件共有的行。如果没有足够的共同内容,则第一个文件将留空。结果适合作为三向合并的虚拟基础输入。