directory search
Guides gitattributes giteveryday gitglossary gitignore gitmodules gitrevisions gittutorial gitworkflows Administration git archive git bundle git clean git filter-branch git fsck git gc git instaweb git reflog Basic Snapshotting git add git commit git diff git mv git reset git rm git status Branching and Merging git branch git checkout git log git merge git mergetool git stash git tag Debugging git bisect git blame git grep Email git am git format-patch git request-pull git send-email External Systems git fast-import git svn Getting and Creating Projects git clone git init Git git annotate git archimport git bisect-lk2009 git check-attr git check-mailmap git check-ref-format git checkout-index git cherry git citool git column git credential git credential-cache git credential-store git cvsexportcommit git cvsimport git cvsserver git diff-files git diff-tree git difftool git fast-export git fetch-pack git fmt-merge-msg git get-tar-commit-id git gui git http-backend git http-fetch git http-push git imap-send git index-pack git interpret-trailers git ls-remote git ls-tree git mailinfo git mailsplit git merge-file git merge-index git merge-one-file git merge-tree git mktag git mktree git name-rev git notes git p4 git pack-objects git pack-redundant git pack-refs git parse-remote git patch-id git prune git prune-packed git quiltimport git receive-pack git remote-ext git remote-fd git remote-testgit git repack git replace git rerere git send-pack git sh-i18n git sh-setup git shell git show-branch git show-index git stripspace git unpack-file git unpack-objects git upload-archive git upload-pack git var git verify-commit git verify-tag git whatchanged git worktree Inspection and Comparison git describe git shortlog git show Miscellaneous api credentials api index gitcli gitcore tutorial gitcredentials gitcvs migration gitdiffcore githooks gitk gitnamespaces gitremote helpers gitrepository layout gitsubmodules gittutorial 2 gitweb gitweb.conf pack format User Manual Patching git apply git cherry-pick git rebase git revert Plumbing Commands git cat-file git check-ignore git commit-tree git count-objects git diff-index git for-each-ref git hash-object git ls-files git merge-base git read-tree git rev-list git rev-parse git show-ref git symbolic-ref git update-index git update-ref git verify-pack git write-tree Server Admin git daemon git update-server-info Setup and Config git git config git help Sharing and Updating Projects git fetch git pull git push git remote git submodule
characters

名称

git-sh-setup  - 常用的 Git shell 脚本设置代码

概要

. "$(git --exec-path)/git-sh-setup"

描述

这不是最终用户想要运行的命令。永远不会是。本文档适用于正在研究 Pornic-ish 脚本和/或正在编写新脚本的人员。

git sh-setup小脚本设计(使用要采购.通过其他 shell 脚本)设置一些变量,在普通的 Git 目录和几个帮手外壳功能指向。

在采购它之前,您的脚本应该设置一些变量; USAGE(以及LONG_USAGE如果有的话)用于定义由usage()shell 函数给出的消息。SUBDIRECTORY_OK可以设置脚本是否可以从工作树的子目录运行(某些命令不会)。

小脚本设置GIT_DIRGIT_OBJECT_DIRECTORYshell 变量,但并没有将其导出到环境中。

功能

结束

将提供的错误消息发送到标准错误流后退出。

用法

与用法消息一起结束。

set_reflog_action

除非已设置GIT_REFLOG_ACTION环境,否则请将环境设置为给定的字符串(通常是程序的名称)。每当脚本运行git更新引用的命令时,就会使用此字符串的值创建引用日志条目,以保留引用更新引用的记录。

git_editor

在给定的文件上运行用户选择的编辑器(GIT_EDITOR,core.editor,VISUAL或EDITOR),但如果没有指定编辑器并且终端为哑,则出错。

is_bare_repository

输出truefalse标准输出流来指示仓库是否为裸仓库(即没有关联的工作树)。

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

修改第一个文件,只保留与第二个文件相同的行。如果共用资料不足,则第一个文件留空。该结果适合作为3路合并的虚拟基础输入。

Previous article: Next article: