文章版本: Enterprise Server 2.17
命令行实用程序
GitHub Enterprise Server 包含的各种实用程序可以帮助解决特殊问题或执行特定任务。
本文内容
- 常规
- ghe-announce
- ghe-check-disk-usage
- ghe-cleanup-caches
- ghe-cleanup-settings
- ghe-config
- ghe-config-apply
- ghe-console
- ghe-dbconsole
- ghe-es-index-status
- ghe-legacy-github-services-report
- ghe-logs-tail
- ghe-maintenance
- ghe-nwo
- ghe-org-admin-promote
- ghe-reactivate-admin-login
- ghe-resque-info
- ghe-saml-mapping-csv
- ghe-service-list
- ghe-set-password
- ghe-ssh-check-host-keys
- ghe-ssh-roll-host-keys
- ghe-ssh-weak-fingerprints
- ghe-ssl-acme
- ghe-ssl-ca-certificate-install
- ghe-ssl-generate-csr
- ghe-storage-extend
- ghe-version
- ghe-webhook-logs
- 集群
- ghe-cluster-support-bundle
- ghe-dpages
- ghe-spokes
- ghe-storage
- Git
- ghe-btop
- ghe-repo
- ghe-repo-gc
- 导入和导出
- ghe-migrator
- git-import-detect
- git-import-hg-raw
- git-import-svn-raw
- git-import-tfs-raw
- git-import-rewrite
- 支持
- ghe-diagnostics
- ghe-support-bundle
- ghe-support-upload
- 升级 GitHub Enterprise Server
- ghe-upgrade
- ghe-upgrade-scheduler
- ghe-update-check
- 用户管理
- ghe-license-usage
- ghe-org-membership-update
- ghe-user-csv
- ghe-user-demote
- ghe-user-promote
- ghe-user-suspend
- ghe-user-unsuspend
以 SSH 管理员用户身份登录后,您可以在虚拟机上的任何位置执行这些命令。 更多信息请参阅“访问管理 shell (SSH)”。
常规
ghe-announce
此实用程序会在每个 GitHub Enterprise 页面顶部设置横幅, 您可以使用横幅向用户广播消息。
# Sets a message that's visible to everyone
$ ghe-announce -s MESSAGE
> Announcement message set.
# Removes a previously set message
$ ghe-announce -u
> Removed the announcement message
ghe-check-disk-usage
此实用程序会检查磁盘中的大文件或已删除但文件句柄仍保持打开的文件。 如果尝试释放根分区中的空间,应运行此实用程序。
ghe-check-disk-usage
ghe-cleanup-caches
此实用程序会清理各种有可能占用根卷上的额外磁盘空间的缓存。 如果您发现一段时间内根卷磁盘空间的使用量显著升高,最好运行此应用程序,查看是否可以帮助降低整体使用量 。
ghe-cleanup-caches
ghe-cleanup-settings
此实用程序会擦除所有现有的 管理控制台 设置。
提示:一般来说,只有在您已联系支持部门并且他们要求您这样做的时候,才会执行此操作。
ghe-cleanup-settings
ghe-config
此实用程序可用于检索和修改 您的 GitHub Enterprise Server 实例 的配置设置。
$ ghe-config core.github-hostname
# Gets the configuration value of `core.github-hostname`
$ ghe-config core.github-hostname 'example.com'
# Sets the configuration value of `core.github-hostname` to `example.com`
$ ghe-config -l
# Lists all the configuration values
允许您在 cluster.conf
中查找节点的 uuid。
$ ghe-config _hostname_.uuid
ghe-config-apply
此实用程序会应用 管理控制台 设置,重新加载系统服务,准备存储设备,重新加载应用程序服务并运行任何待处理的数据库迁移。 相当于在 管理控制台 Web UI 中单击 Save settings,或相当于向 /setup/api/configure
端点发送 POST 请求。
您有可能永远不需要手动运行此实用程序,但如果希望通过 SSH 自动完成设置保存过程,也可以使用此实用程序。
ghe-config-apply
ghe-console
此实用程序会在您的 GitHub Enterprise 设备上打开 GitHub Rails 控制台。 如果没有来自 GitHub Enterprise 支持 的指示,不要使用此命令。 不正确的使用可能造成损坏或数据丢失。
ghe-console
ghe-dbconsole
此实用程序会在您的 GitHub Enterprise 设备上打开 MySQL 数据库会话。 如果没有来自 GitHub Enterprise 支持 的指示,不要使用此命令。 不正确的使用可能造成损坏或数据丢失。
ghe-dbconsole
ghe-es-index-status
此实用程序会以 CSV 格式返回 ElasticSearch 索引的摘要。
将包含标头行的索引摘要打印到 STDOUT
:
$ ghe-es-index-status -do
> warning: parser/current is loading parser/ruby23, which recognizes
> warning: 2.3.3-compliant syntax, but you are running 2.3.4.
> warning: please see https://github.com/whitequark/parser#compatibility-with-ruby-mri.
> Name,Primary,Searchable,Writable,UpToDate,RepairProgress,Version
> code-search-1,true,true,true,true,100.0,72e27df7c631b45e026b42bfef059328fa040e17
> commits-5,true,true,true,true,100.0,7ed28813100c47813ef654c0ee2bb9abf21ab744
> gists-4,true,true,true,true,100.0,cf8e7d04fcf2564c902e2873c424a279cc41079d
> issues-4,false,false,false,true,100.0,d0bb08f71eebf6e7b070572aa399b185dbdc8a76
> issues-5,true,true,true,true,100.0,d0bb08f71eebf6e7b070572aa399b185dbdc8a76
> projects-2,true,true,true,true,100.0,c5cac1c4b3c66d42e609d088d174dbc3dd44469a
> pull-requests-6,true,true,true,true,100.0,6a466ad6b896a3499509990979bf9a18d7d41de3
> repos-6,true,true,true,true,100.0,6c8b5fbba0fc1e409558db411d05e092c1387082
> users-5,true,true,true,true,100.0,38984875552bb826c9ec42999f409cb2e95556eb
> wikis-4,true,true,true,true,100.0,2613dec44bd14e14577803ac1f9e4b7e07a7c234
将索引摘要和管道结果打印到 column
,以供读取:
$ ghe-es-index-status -do | column -ts,
> warning: parser/current is loading parser/ruby23, which recognizes
> warning: 2.3.3-compliant syntax, but you are running 2.3.4.
> warning: please see https://github.com/whitequark/parser#compatibility-with-ruby-mri.
> Name Primary Searchable Writable UpToDate RepairProgress Version
> code-search-1 true true true true 100.0 72e27df7c631b45e026b42bfef059328fa040e17
> commits-5 true true true true 100.0 7ed28813100c47813ef654c0ee2bb9abf21ab744
> gists-4 true true true true 100.0 cf8e7d04fcf2564c902e2873c424a279cc41079d
> issues-4 false false false true 100.0 d0bb08f71eebf6e7b070572aa399b185dbdc8a76
> issues-5 true true true true 100.0 d0bb08f71eebf6e7b070572aa399b185dbdc8a76
> projects-2 true true true true 100.0 c5cac1c4b3c66d42e609d088d174dbc3dd44469a
> pull-requests-6 true true true true 100.0 6a466ad6b896a3499509990979bf9a18d7d41de3
> repos-6 true true true true 100.0 6c8b5fbba0fc1e409558db411d05e092c1387082
> users-5 true true true true 100.0 38984875552bb826c9ec42999f409cb2e95556eb
> wikis-4 true true true true 100.0 2613dec44bd14e14577803ac1f9e4b7e07a7c234
ghe-legacy-github-services-report
此实用程序会列出您的设备中使用 GitHub Services 的仓库,作为一种集成方法,此服务将于 2018 年 10 月 1 日停用。 您的设备上的用户可能已设置 GitHub Services,为发往某些仓库的推送创建通知。 更多信息请参阅 GitHub 博客 上的“宣布弃用 GitHub Services”或 GitHub 开发者文档中的“替换 GitHub Services”。 如需获取关于此命令的更多信息或附加选项,请使用 -h
标志。
ghe-legacy-github-services-report
ghe-logs-tail
此实用程序允许跟踪记录安装中的所有相关日志文件。 您可以传入选项,将日志限制为特定集合。 使用 -h 标志表示附加选项。
ghe-logs-tail
ghe-maintenance
此实用程序允许您控制安装维护模式的状态, 其设计为主要由 管理控制台 在后台使用,但也可以直接使用。
ghe-maintenance -h
ghe-nwo
此实用程序会根据仓库 ID 返回仓库名称和所有者。
ghe-nwo REPOSITORY_ID
ghe-org-admin-promote
使用此命令可为设备上具有站点管理员权限的用户提供组织所有者权限,或者为组织中的任何用户提供组织所有者权限。 您必须指定用户和/或组织。 ghe-org-admin-promote
命令始终会在运行前要求确认,除非您使用 -y
标志绕过确认过程。
您可将以下选项与实用程序配合使用:
-u
标志指定用户名。 使用此标志可为特定用户提供组织所有者权限。 省略-u
标志会将所有站点管理员升级为指定组织的所有者。-o
标志指定组织。 使用此标志可提供特定组织中的所有者权限。 省略-o
标志会将所有组织中的所有者权限授予指定的站点管理员。-a
标志会将所有组织中的所有者权限授予所有站点管理员。-y
标志可绕过手动确认。
此实用程序无法将非站点管理员升级为所有组织的所有者。 您可以使用 ghe-user-promote 将普通用户帐户升级为站点管理员。
将特定组织中的组织所有者权限授予一个用户
ghe-org-admin-promote -u USERNAME -o ORGANIZATION
将所有组织中的组织所有者权限授予特定的站点管理员
ghe-org-admin-promote -u USERNAME
将特定组织中的组织所有者权限授予所有站点管理员
ghe-org-admin-promote -o ORGANIZATION
将所有组织中的组织所有者权限授予所有站点管理员
ghe-org-admin-promote -a
ghe-reactivate-admin-login
在 10 分钟内登录尝试失败 10 次后,使用此命令可立即解锁 管理控制台。
$ ghe-reactivate-admin-login
ghe-resque-info
此实用程序会显示关于后台作业(活动作业和队列中的作业)的信息, 它提供的作业计数与每个页面顶部管理员统计信息栏中的计数相同。
此实用程序可以帮助确定 Resque 服务器在处理后台作业时是否会出现问题。 下列任一场景均可能指示 Resque 存在问题:
- 后台作业数增加,而活动作业数保持不变。
- 事件源未更新。
- 服务挂钩未触发。
- Web 界面在 Git 推送后未更新。
如果怀疑 Resque 出现故障,请联系 GitHub Enterprise 支持 或 GitHub 高级支持 获取帮助。
使用此命令,您还可以暂停或恢复队列中的作业。
$ ghe-resque-info
# lists queues and the number of currently queued jobs
$ ghe-resque-info -p QUEUE
# pauses the specified queue
$ ghe-resque-info -r QUEUE
# resumes the specified queue
ghe-saml-mapping-csv
此实用程序可帮助映射 SAML 记录。
为 GitHub Enterprise 用户创建包含所有 SAML 映射的 CSV 文件:
$ ghe-saml-mapping-csv -d
要使用新值执行更新 SAML 映射的排演:
$ ghe-saml-mapping-csv -u -n -f /path/to/file
要使用新值更新 SAML 映射:
$ ghe-saml-mapping-csv -u -f /path/to/file
ghe-service-list
此实用程序会列出您的设备上已启动或停止(正在运行或等待)的服务。
$ ghe-service-list
start/running
- github-resqued, process 12711
- github-unicorn, process 12726
- github-gitauth, process 12743
- git-daemon, process 12755
- babeld, process 12771
- github-svn-proxy, process 12802
- gist-unicorn, process 12832
- gist-resqued, process 12881
- render-unicorn, process 12939
- hookshot-unicorn, process 13076
- nodeload2, process 13192
- slumlord-unicorn, process 13304
- ghe-storage, process 2012
- enterprise-manage-unicorn, process 2024
- enterprise-manage-resque, process 2053
stop/waiting
- ghe-replica-mode
如有需要,可将此命令返回的服务名称与 systemctl
命令结合使用,以手动停止、启动或重启这些服务。 例如:
$ sudo systemctl restart github-resqued
停止服务会导致安装停机,因此建议您在停止或重启任何服务之前联系 GitHub Enterprise 支持 或 GitHub 高级支持。
ghe-set-password
使用 ghe-set-password
,您可以设置新密码,在 管理控制台 中进行身份验证。
ghe-set-password
ghe-ssh-check-host-keys
此实用程序会对照已知泄露的 SSH 主机密钥检查现有的 SSH 主机密钥。
$ ghe-ssh-check-host-keys
如果发现主机密钥泄露,实用程序会以状态 1
退出并显示以下消息:
> One or more of your SSH host keys were found in the blacklist.
> Please reset your host keys using ghe-ssh-roll-host-keys.
如果未发现主机密钥泄露,实用程序会以状态 0
退出并显示以下消息:
> The SSH host keys were not found in the SSH host key blacklist.
> No additional steps are needed/recommended at this time.
ghe-ssh-roll-host-keys
此实用程序会滚动 SSH 主机密钥并将其替换为新生成的密钥。
$ sudo ghe-ssh-roll-host-keys
Proceed with rolling SSH host keys? This will delete the
existing keys in /etc/ssh/ssh_host_* and generate new ones. [y/N]
# Press 'Y' to confirm deleting, or use the -y switch to bypass this prompt
> SSH host keys have successfully been rolled.
ghe-ssh-weak-fingerprints
此实用程序会返回存储在 GitHub Enterprise 设备上的已知弱 SSH 密钥的报告。 您可以选择批量撤销用户密钥。 此实用程序将报告弱系统密钥,您必须在 管理控制台 中手动撤销这些密钥。
# Print a report of weak user and system SSH keys
$ ghe-ssh-weak-fingerprints
# Revoke all weak user keys
$ ghe-ssh-weak-fingerprints --revoke
ghe-ssl-acme
此实用程序允许您在 GitHub Enterprise 设备上安装 Let's Encrypt 证书。 更多信息请参阅“配置 TLS”。
您可以使用 -x
标志来删除 ACME 配置。
ghe-ssl-acme -e
ghe-ssl-ca-certificate-install
此实用程序允许您在 GitHub Enterprise 服务器上安装自定义根 CA 证书。 证书必须采用 PEM 格式。 此外,如果您的证书提供者在一个文件中包含多个 CA 证书,则必须将其拆分到多个单独文件中,随后再将这些文件逐个传递到 ghe-ssl-ca-certificate-install
。
运行此实用程序可添加证书链进行 S/MIME 提交签名验证。 更多信息请参阅“关于提交签名验证”。
如果 您的 GitHub Enterprise Server 实例 无法连接到另一台服务器的原因是后者使用自签名 SSL 证书或没有为其提供必要 CA 包的 SSL 证书,请运行此实用程序。 确认这种情况的一种方法是通过 您的 GitHub Enterprise Server 实例 运行 openssl s_client -connect host:port -verify 0 -CApath /etc/ssl/certs
。 如果可以验证远程服务器的 SSL 证书,SSL-Session
的返回代码应为 0,如下所示。
SSL-Session:
Protocol : TLSv1
Cipher : AES128-SHA
Session-ID: C794EBCC3CBC10F747C9AFC029C03C1048FC99CFC34D13D7444E0F267C58DF4C
Session-ID-ctx:
Master-Key: 02A7C47CFD6EEC87D3C710E9DD87390E04EF82DDD7514AE03127D5DC1945FC0CAEFB5395791AEA598667EFA61B9EA8C5
Key-Arg : None
Start Time: 1394581597
Timeout : 300 (sec)
Verify return code: 0 (ok)
另一方面,如果*无法<0>验证远程服务器的 SSL 证书,SSL-Session
的返回代码应为非零值:
SSL-Session:
Protocol : TLSv1
Cipher : AES128-SHA
Session-ID: 82CB288051A6DB66094C50A69CF1292AEE7E54C6B01B659B98AB336F8C33863E
Session-ID-ctx:
Master-Key: 01B025B2F764043A27919A8D1355AAECD8844FF0831B1D664042334790574A6F4025BAB085D4ED71D71AAB3091B849E5
Key-Arg : None
Start Time: 1394581782
Timeout : 300 (sec)
Verify return code: 27 (certificate not trusted)
您可以将以下附加选项与实用程序结合使用:
-r
标志允许您卸载 CA 证书。-h
标志可显示更多用法信息。
ghe-ssl-ca-certificate-install -c /path/to/certificate
ghe-ssl-generate-csr
此实用程序允许您生成可与商业或私有证书颁发机构共享的私钥和证书签名请求 (CSR),以获取可与您的实例配合使用的有效证书。 更多信息请参阅“配置 TLS”。
如需获取关于此命令的更多信息或附加选项,请使用 -h
标志。
ghe-ssl-generate-csr
ghe-storage-extend
某些平台需要使用此脚本扩展用户量。 更多信息请参阅“增加存储容量”。
$ ghe-storage-extend
ghe-version
此实用程序会打印 您的 GitHub Enterprise Server 实例 的版本、平台和内部版本号。
$ ghe-version
ghe-webhook-logs
此实用程序会返回 web 挂钩交付日志,供管理员审查和确定任何问题。
ghe-webhook-logs
要显示过去一天所有失败的挂钩交付:
ghe-webhook-logs -f -a YYYYMMDD
要显示交付的完整挂钩有效负载、结果以及任何异常:
ghe-webhook-logs -g delivery-guid -v
要显示全局 web 挂钩交付:
ghe-webhook-logs --global
集群
ghe-cluster-support-bundle
此实用程序创建的支持包 tarball 包含采用 Geo-replication 或集群配置的各个节点中的重要日志。
默认情况下,此命令会在 /tmp 中创建 tarball,但为了便于通过 SSH 进行传输,您也可以通过 cat
将打包文件创建到 STDOUT
中。 在 Web UI 未响应或从 /setup/support 下载支持包失败的情况下,您可以使用此方法。 如果要生成包含旧日志的扩展包,则必须使用此命令。 您还可以使用此命令将集群支持包直接上传到 GitHub Enterprise Support。
要创建标准捆绑包:
$ ssh -p 122 admin@hostname -- 'ghe-cluster-support-bundle -o' > cluster-support-bundle.tgz
要创建扩展捆绑包:
$ ssh -p 122 admin@hostname -- 'ghe-cluster-support-bundle -x -o' > cluster-support-bundle.tgz
To send a bundle to GitHub 支持:
$ ssh -p 122 admin@hostname -- 'ghe-cluster-support-bundle -u'
To send a bundle to GitHub 支持 and associate the bundle with a ticket:
$ ssh -p 122 admin@hostname -- 'ghe-cluster-support-bundle -t ticket-id'
ghe-dpages
This utility allows you to manage the distributed GitHub Pages server.
ghe-dpages
To show a summary of repository location and health:
ghe-dpages status
To evacuate a GitHub Pages storage service before evacuating a cluster node:
ghe-dpages evacuate pages-server-
ghe-spokes
此实用程序允许您管理分布式 git 服务器上各仓库的三个副本。
ghe-spokes
To show a summary of repository location and health:
ghe-spokes status
To show the servers in which the repository is stored:
ghe-spokes route
To evacuate storage services on a cluster node:
ghe-spokes server evacuate git-server-
ghe-storage
此实用程序允许您在撤出集群节点之前撤出所有存储服务。
ghe-storage evacuate storage-server-
Git
ghe-btop
当前 Git 操作的类 top
接口。
ghe-btop [ | --help | --usage ]
ghe-repo
此实用程序允许您切换到仓库的目录并以 git
用户身份打开交互式 shell。 您可以通过 git-*
或 git-nw-*
等命令对仓库执行手动检查或维护。
ghe-repo username/reponame
ghe-repo-gc
此实用程序会手动重新打包仓库网络,以优化包存储。 如果仓库较大,运行此命令有助于减小其整体大小。 GitHub Enterprise 会在与仓库网络交互的过程中自动运行此命令。
您可以添加可选的 --prune
参数来移除不是从分支、标记或其他任何 ref 引用的不可达 Git 对象。 此方法特别适用于立即移除之前泄露的敏感信息。
ghe-repo-gc username/reponame
导入和导出
ghe-migrator
ghe-migrator
属于高保真工具,可帮助用户从一个 GitHub 实例迁移到另一个实例。 您可以整合实例或将组织、用户、团队和仓库从 GitHub.com 移至 GitHub Enterprise。
更多信息请参阅迁移用户、组织和仓库数据上的指南。
git-import-detect
给定一个 URL,检测哪种类型的源控制管理系统位于另一端。 在手动导入过程中,此信息很可能是已知的,但在自动执行的脚本中非常有用。
git-import-detect
git-import-hg-raw
This utility imports a Mercurial repository to this Git repository. For more information, see "Importing data from third party version control systems."
git-import-hg-raw
git-import-svn-raw
This utility imports Subversion history and file data into a Git branch. 这属于直接复制树,会忽略任何主干或分支差异。 For more information, see "Importing data from third party version control systems."
git-import-svn-raw
git-import-tfs-raw
This utility imports from Team Foundation Version Control. For more information, see "Importing data from third party version control systems."
git-import-tfs-raw
git-import-rewrite
This utility rewrites the imported repository. This gives you a chance to rename authors and, for Subversion and TFS, produces Git branches based on folders. For more information, see "Importing data from third party version control systems."
git-import-rewrite
支持
ghe-diagnostics
此实用程序会执行各项检查并收集关于安装的信息,您可以将此类信息发送给支持团队,以帮助诊断您遇到的问题。
目前,此实用程序的输出与下载 管理控制台 中的诊断信息类似,但会逐渐增加一些 Web UI 中未提供的其他改进。 更多信息请参阅“创建和共享诊断文件”。
ghe-diagnostics
ghe-support-bundle
注:如果您使用的是 Geo-replication 配置或 GitHub Enterprise 集群,则应使用 ghe-cluster-support-bundle
命令检索支持包。 更多信息请参阅“命令行实用程序”。
默认情况下,此命令会在 /tmp 中创建 tarball,但为了便于通过 SSH 进行传输,您也可以通过 cat
将打包文件创建到 STDOUT
中。 在 Web UI 未响应或从 /setup/support 下载支持包失败的情况下,您可以使用此方法。 如果要生成包含旧日志的扩展包,则必须使用此命令。 您还可以使用此命令将支持包直接上传到 GitHub Enterprise Support。
To create a standard bundle:
$ ssh -p 122 admin@hostname -- 'ghe-support-bundle -o' > support-bundle.tgz
To create an extended bundle:
$ ssh -p 122 admin@hostname -- 'ghe-support-bundle -x -o' > support-bundle.tgz
To send a bundle to GitHub 支持:
$ ssh -p 122 admin@hostname -- 'ghe-support-bundle -u'
To send a bundle to GitHub 支持 and associate the bundle with a ticket:
$ ssh -p 122 admin@hostname -- 'ghe-support-bundle -t ticket-id'
ghe-support-upload
此实用程序会将您的设备中的信息发送到 GitHub Enterprise Support。 您可以指定本地文件,或通过 STDIN
提供最大 100MB 的数据流。 可以选择将上传的数据与支持事件单相关联。
To send a file to GitHub 支持 and associate the file with a ticket:
ghe-support-upload -f path/to/your/file -t ticket-id
To upload data via STDIN
and associating the data with a ticket:
ghe-repl-status -vv | ghe-support-upload -t ticket-id -d "Verbose Replication Status"
在本例中,ghe-repl-status -vv
会发送副本设备中的 verbose 状态信息。 您应将 ghe-repl-status -vv
替换为要传输到 STDIN
的特定数据,并将 Verbose Replication Status
替换为数据的简单说明。 一般来说,只有在您已联系支持部门并且他们要求您这样做的时候,才会执行此操作。
升级 GitHub Enterprise Server
ghe-upgrade
此实用程序会安装或验证升级包。 如果升级失败或中断,您还可以使用此实用程序回滚补丁版本。 更多信息请参阅“升级 GitHub Enterprise Server”。
To verify an upgrade package:
ghe-upgrade --verify UPGRADE-PACKAGE-FILENAME
To install an upgrade package:
ghe-upgrade UPGRADE-PACKAGE-FILENAME
回滚升级时,您必须使用一个带 .pkg 扩展的升级包文件。 不支持带 .hpkg 扩展的热补丁包文件。
ghe-upgrade --allow-patch-rollback EARLIER-RELEASE-UPGRADE-PACKAGE.pkg
运行命令后需要重启。 回滚不会影响数据分区,因为迁移不是在补丁版本上运行的。
ghe-upgrade-scheduler
此实用程序可以管理已排定的升级包安装。 您可以显示、新建或移除已排定的安装。 您必须使用 cron 表达式创建日程。 更多信息请参阅 Cron 维基百科词条。
To schedule a new installation for a package:
$ ghe-upgrade-scheduler -c "0 2 15 12 *" UPGRADE-PACKAGE-FILENAME
To show scheduled installations for a package:
$ ghe-upgrade-scheduler -s UPGRADE PACKAGE FILENAME
> 0 2 15 12 * /usr/local/bin/ghe-upgrade -y -s UPGRADE-PACKAGE-FILENAME > /data/user/common/UPGRADE-PACKAGE-FILENAME.log 2>&1
To remove scheduled installations for a package:
$ ghe-upgrade-scheduler -r UPGRADE PACKAGE FILENAME
ghe-update-check
此实用程序将检查 GitHub Enterprise 是否有新的补丁版本可用。 如果有新的补丁版本,并且实例中有可用空间,系统将下载此包。 默认情况下,包会保存到 /var/lib/ghe-updates。 管理员随后可执行升级。
包含下载状态的文件位于 /var/lib/ghe-updates/ghe-update-check.status。
要查看最新的 GitHub Enterprise 版本,请使用 -i
开关。
$ ssh -p 122 admin@hostname -- 'ghe-update-check'
用户管理
ghe-license-usage
This utility exports a list of the installation's users in JSON format. If your instance is connected to GitHub Enterprise Cloud, GitHub Enterprise Server uses this information for reporting licensing information to GitHub Enterprise Cloud. For more information, see "Connecting GitHub Enterprise Server to GitHub Enterprise Cloud ."
By default, the list of users in the resulting JSON file is encrypted. 使用 -h
标志可获取更多选项。
ghe-license-usage
ghe-org-membership-update
此实用程序将对您的实例中的所有成员强制实施默认的组织成员关系可见性设置。 更多信息请参阅“配置组织成员关系的可见性”。设置选项为 public
或 private
。
ghe-org-membership-update --visibility=SETTING
ghe-user-csv
This utility exports a list of all the users in the installation into CSV format. CSV 文件包含电子邮件地址、用户所属类型(例如管理员、用户)、用户拥有的仓库数量、SSH 密钥数量、组织成员关系数量、上次登录的 IP 地址等。 使用 -h
标志可获取更多选项。
ghe-user-csv -o > users.csv
ghe-user-demote
此实用程序会将指定用户从管理员状态降级为普通用户状态。 建议使用 Web UI 执行此操作,但会在 ghe-user-promote
实用程序运行出错并且需要再次通过 CLI 将用户降级的情况下提供此实用程序。
ghe-user-demote some-user-name
ghe-user-promote
此实用程序会将指定用户帐户升级为站点管理员。
ghe-user-promote some-user-name
ghe-user-suspend
此实用程序会挂起指定用户,避免他们登录、推送或从仓库拉取。
ghe-user-suspend some-user-name
ghe-user-unsuspend
此实用程序会取消挂起指定用户,向他们授予登录、推送以及从仓库拉取的权限。
ghe-user-unsuspend some-user-name