问题标签 [gitolite]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
git - 带有 gitolite 的 git 默认远程分支
我正在为某些项目使用gitflow分支模型。因此,当有人克隆存储库时,我希望默认签出分支是develop
分支而不是master
.
对于托管在 Github 上的公共项目,我可以使用该存储库的 Admin 部分来控制它,但是对于使用 gitolite 管理的私有存储库,我发现的唯一可行的解决方案是 ssh 到主机并直接在裸机中使用git update-ref命令存储库。
有什么方法可以远程执行此操作,即无需 ssh 进入远程机器?
git - gitolite:将相同的配置添加到所有 repos
我想为 gitolite 管理的所有存储库自动添加相同的配置值。我认为将以下内容添加到 gitolite.conf 就可以了:
尽管 gitolite 在我推送时没有抱怨,但 @all 配置项都不会添加到单个存储库中(尽管任何特定的都可以)。
git - 我如何配置 gitweb 和 gitolite 以便它们一起工作?
我正在尝试让 gitweb 与 gitolite 一起工作......但到目前为止没有成功。
我正在使用 RedHat Linux 机器。一个名为git
存在的用户。
gitolite 安装在:/home/git
存储库位置:/home/git/repositories
请注意,gitweb 在普通的 git 上运行良好。现在我正试图让它与 gitolite 一起工作。
这是我的文件的样子:
/li>/etc/gitweb.conf
/li>/home/git/projects.list
/li>/home/git/.gitolite.rc
:
我错过了什么配置?我没有对 Apache 进行任何更改。
Web URL:http://MyHostName/git
这给出了一个 404 错误,说 - No repositories found。
git - 如何在 gitolite 中安装挂钩
我已经阅读了有关 hooks、类似 问题和大量代码的所有文档,但我无法跟踪我的程序中的错误在哪里。我需要在我的 gitolite 安装中安装一个简单的钩子(在 CentOS 上使用 rpm 包制作),所以这就是我所做的:
要安装 gitolite(前一段时间):
- 安装了rpm包
# su - gitolite
$ gl-setup /tmp/fabio.pub
(作为 gitolite 用户)
现在安装钩子:
- 创建了一个
post-update
包含钩子代码~gitolite/.gitolite/hooks/common
的示例chmod +x
文件 - 如此处所述
gl-setup /tmp/fabio.pub
再次运行
但是什么也没发生,最新命令的退出状态为 0,但钩子文件在任何存储库中都没有符号链接。那么我的程序有什么问题?我错过了什么吗?
奖励问题:
- 如果我理解了文档,我的程序是正确的吗?即每次更新任何钩子时我应该运行 gl-setup 吗?
- 通过这种方式,我在这个 gitolite 安装下的每个存储库中安装了共享钩子,对吗?我可以手动安装一个钩子作为符号链接到某个地方,或者只是一个给定存储库的可执行脚本吗?我应该在给定存储库的挂钩文件夹中手动执行此操作吗?我应该关心钩子冲突吗(即单个存储库的任何自定义钩子会阻止任何其他具有相同名称的共享钩子)?
不知道这是否重要,我的 gitolite 版本是1.5.9.1
.
git - 如何设置 gitolite 以在网络驱动器上拥有存储库目录?
我正在尝试将 Windows 2003 Server 设置为 git 服务器。我正在尝试安装 gitolite 以管理我的存储库。我遇到的问题是,出于空间原因以及其他考虑,我想在网络驱动器上设置我的存储库。我一生都无法弄清楚如何管理这项任务。当我编辑 gitolite.rc 文件以更改目录以映射到我希望它去的我的 e:\repositories 文件夹时,我得到一个错误。
任何建议都非常感谢。我也对其他解决方案持开放态度。
ssh - 具有非默认端口的 gitolite
要克隆由 gitolite 管理的存储库,通常使用以下语法
这告诉 SSH 客户端使用gitolite作为用户名连接到服务器的 22 端口。当我尝试使用端口号时:
Git 抱怨存储库22:repository不可用。如果 SSH 服务器使用不同的端口,应该使用什么语法?
git - 在 git 和 gitolite 中处理长的个人分支名称
我在 Git 中使用“Integration-Manager”工作流程,同时使用 gitolite 进行权限管理。Gitolite 有这个简洁的选项,可以轻松管理个人用户分支:
在我们的例子中,这些是开发人员拥有写入权限的唯一分支。这意味着他们经常从“blessed”存储库中提取,这是“origin”远程上的“master”分支,如下所示:
然而,他们需要定期将他们的工作推回他们的个人分支机构,如下所示:
键入那些长分支名称会变得非常老旧,非常快,尤其是对于必须定期从各种长分支名称中提取的集成商而言。大多数人想输入一些更简单的东西,比如:
所以,我的问题是,“我如何通过更短的名称和减少拼写错误来使这更容易?” 有没有办法为用户的远程分支创建别名或快捷方式?我们的集成商希望能够为每个开发人员创建别名,以简化她的命令。
此外,是否可以将 git 配置为始终从一个分支拉出并推送到另一个分支,而无需在两种情况下都指定远程和分支名称?这将帮助我们的开发人员,尽管它不会帮助我们的集成商。...我熟悉配置单个默认值以从同一个远程和分支推送和拉取,但这在这种情况下不起作用,因为推送和拉取分支是不同的。
谢谢!
git - git 在哪个文件中存储提交历史?
我想从 git 存储提交历史记录的文件中读取,以将每个提交信息存储在我的项目数据库中,并在我的项目视图中显示所有历史记录
git - git push origin master:refs/heads/master 这是做什么的
当我在我的 gitolite 存储库上创建一个新的存储库时,我总是必须输入以下命令才能开始将代码推送到服务器。
git push origin master:refs/heads/master
它有什么作用 ?
我的猜测是这与不确定的头部参考有关。有人可以向我解释吗?
git - Gitolite没有更新authorized_keys文件
我最近使用 SSH 密钥和其他一切在 Cygwin 环境中安装了 Gitolite。
我成功安装了 Gitolite 并可以访问gitolite-admin
存储库,配置并放置新密钥。当我commit
ted 和push
ed 时,一切都很好,直到我注意到我无法gitolite-admin
再次访问新的存储库或存储库......
然后我通过 ssh 进入我的服务器,并注意到 gitolite 删除了authorized_keys
除了我使用 SSH 配置的默认 SSH 密钥之外的所有公钥。
我检查了钩子是否正在传播并且一切看起来都很好 - Gitolite 创建了新的存储库并编译了新的gitolite.conf
我不知道我错过了什么——出了点问题,但我不知道它是什么。
我最后看到的是文件~/.gitolite/src/sshkeys-lint
管理authorized_keys
文件,但我不太了解 shell 脚本语言。