- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有我的点文件设置,我确实有一个 .gitconfig。问题出在我的 OSX 机器上,希望助手是 osxkeychain
,但对于我的 linux 机器,我想要 cache --timeout 3600
。有没有办法在 gitconfig 文件中进行操作系统检测?也许是这样的:
[credential os=apple]
helper = osxkeychain
[credential os=linux]
helper = cache --timeout 3600
最佳答案
没有办法在 Git 配置中进行操作系统配置。但是,有两种可能的方法。
一个是利用每个用户有两个配置文件,~/.gitconfig
和 ~/.config/git/config
(尽管如果您设置了 $XDG_CONFIG_HOME
,后者可能会有所不同)。我将常用配置存储在前者中,将任何自定义的每台机器配置(不由 Git 管理)存储在后者中,例如凭证助手和签名子 key 。如果您使用 Git 管理点文件,则可以在点文件中包含一个脚本,将适当的文件复制到点文件中。
另一种选择是将凭证助手指定为 shell 命令,这当然具有 shell 的所有功能。所以你可以这样做:
[credential]
helper = "!f() { if [ \"$(uname -s)\" = Linux ]; then git credential-cache --timeout 3600 \"$@\"; else git credential-osxkeychain \"$@\"; fi; };f"
这将根据您运行的操作系统调用适当的帮助器。
关于Gitconfig 凭据操作系统检查,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59258793/
我将我的项目托管在 TFS-GIT 服务器中。我在 TFS 上遇到 pull 请求 merge 问题。一种选择是更新 TFS 服务器本身上的 git 配置以“merge --no--ff”,因为时间紧
一定时间后git报错以识别自己,将gitconfig文件设置为 [user] name = = email = = 最佳答案 原来是 Atom 编辑器重置了我的 git 配置。 Ato
我用 git clone 克隆了一个存储库它依赖于另一个私有(private)仓库。在当前 repo 中,我尝试 go get该依赖项( go get -u ./... )它给我一个错误: fatal
我有我的点文件设置,我确实有一个 .gitconfig。问题出在我的 OSX 机器上,希望助手是 osxkeychain,但对于我的 linux 机器,我想要 cache --timeout 3600
我正在尝试设置我的 git 配置,以便我可以使用工作环境和个人环境。 这是我的 ~.gitconfig 文件的内容(碰巧 work 和 private 在 github 上): [url "git@
我编辑了我的 .gitconfig 文件以添加对 LabView 的支持,看起来我做了一些 Git 不完全喜欢的事情。问题是它 (Git) 没有告诉我它不喜欢什么。我做错了什么? 错误消息也没有太大帮
如果我添加 [format] pretty = format:%h %ad %s 到我的 ~/.gitconfig 并输入 git log 我得到: 36f6ac2 2016-05-22 08:5
我在我的 .gitconfig 中定义了以下别名: [alias] teamcity = ! tc tc 是我在 .bashrc 文件中定义的 shell 函数。出于某种原因,我收到以下错误:
我们公司使用了许多定制的开源项目。每当我贡献上游分支时,我都会更改为使用我的个人电子邮件/姓名。有没有办法让每个分支都有 gitconfig? 比如我想要的是 [remote 'gerrit'] na
我想使用全局 gitconfig 文件设置我的 git (TortoiseGIT),这样当我克隆存储库时默认的远程名称不是“origin”,而是我定义的一些其他文本(例如“foo”)。 这可能吗?有哪
Git 似乎忽略了 ~/.gitconfig $ git config --global core.filemode false $ git config -l core.filemode=false
我使用两种不同的 git 电子邮件,一种用于工作,一种用于公共(public)项目。最初我认为我可以在我所有公共(public)存储库所在的文件夹中使用不同的电子邮件创建一个单独的 .gitconfi
我正在编辑我的 ~/.gitconfig 并注意到有混合的制表符/空格。通常混合使用制表符/空格是不好的,但是当我试图查找文档以了解允许的语法要求时,我找不到答案。 ~/.gitconfig 语法是否
在我个人的 Ubuntu 机器中,我有一个目录,其中包含我所有的专业项目。我想为他们使用不同的 git 配置(主要是不同的用户名和电子邮件)。这似乎以前有效,但现在不再有效了。 ~/.gitconfi
我需要一个脚本来确保 .gitconfig 文件中包含以下内容: [url "git@:"] insteadOf = https:/// insteadOf = https:///
我的 .gitconfig 文件中有这个别名: setmeld = config --global diff.external git-meld nomeld = config --globa
我在 Windows 7 下运行这个命令: git status 现在我收到这个错误: fatal: unable to access 'H:\/.config/git/config 我现在与网络断开
基本上我想做的是有一个方便的工具,我可以在其中说: git 打开 这只会在您的浏览器中打开当前的 github 存储库。如果我能得到名称,我可以使用 https://github.com/{user
我有以下.gitconfig: [user] name = name email = email@email.com custom_field = AAA 使用 git config 可以轻松获取姓名
我一直在使用这个别名: aliases = !git config --get-regexp 'alias.*' | colrm 1 6 | sed 's/[ ]/ = /' 显示配置文件中的所有别名
我是一名优秀的程序员,十分优秀!