Git push被拒绝,并显示以下错误消息:
expected committer email '' but found 'karan@xyz.com'
Run Code Online (Sandbox Code Playgroud)
我已经尝试过了:
但没有一个有效.我还能做些什么来解决它.
对不起,如果已经提出这个问题了.
我从一个名为"git_lab"的repo克隆,它有一个名为"test"的分支.克隆时我使用"-b myname_test"创建一个名为"myname_test"的本地分支,本地克隆名为"myname_git_lab"
当我执行"git pull"时,它会自动获取并合并从"test"到"myname_test"的更改,但是对于git push,我需要指定repo和branch名称.
$> git remote show git_lab
为'git pull'配置的本地分支:myname_test与远程测试合并
有没有办法我可以配置"为'git push'配置的本地分支",这样我就不需要指定分支和repo名称?
我知道Araxis Merge现在是mergetoolGit 的"完全支持" ,所以我能找到关于配置Git使用它的大部分内容现在已经过时了.特别是,Araxis Merge应该只是通过执行来"开箱即用"
git config --global merge.tool araxis
Run Code Online (Sandbox Code Playgroud)
提供的araxis是我的PATH.
但是,由于几个原因,修改我的PATH不是一个选项,所以我需要能够指定正确的path或cmd在.gitconfig.
我应该如何配置Git(在OS X上)以便找到Araxis Merge?只要按照像其他工具的例子kdiff3,并p4merge用
git config --global mergetool.araxis.path /Applications/Araxis Merge.app/Contents/MacOS/Araxis Merge
Run Code Online (Sandbox Code Playgroud)
不起作用; 也不(猜测)
git config --global mergetool.araxis.path /Applications/Araxis Merge.app/Contents/Utilities/araxisgitmerge
git config --global difftool.araxis.path /Applications/Araxis Merge.app/Contents/Utilities/araxisgitdiff
Run Code Online (Sandbox Code Playgroud)
我该如何配置araxis.path?是否有其他Git设置应与Araxis Merge一起使用?
简而言之
是否有可能创建存储(使用git stash create)而无需配置user.email和user.name?类似于git commit --author选项的东西?
一些背景:
我有几个构建机器,我有一个构建用户.每个人都可以访问中央git存储库.但是我还没有配置user.email,并user.name为每个用户; 因为他们永远不需要提交.
在我使用的一个脚本中
git stash create
Run Code Online (Sandbox Code Playgroud)
(这允许我使用git archive --format-gtz ...我将为您提供详细信息;请参阅我的相关问题)
但是此命令失败:
*** Please tell me who you are.
Run
git config --global user.email "you@example.com"
git config --global user.name "Your Name"
to set your account's default identity.
Omit --global to set the identity only in this repository.
fatal: empty ident name (for <macq@chmalap.macqel>) not allowed
Cannot save the …Run Code Online (Sandbox Code Playgroud) 我曾经把 git 设置得很好,当我运行时它会自动推送到同名的远程分支git push,并在运行时自动拉取git pull。
我试图向朋友展示如何做到这一点,并在此过程中设法破坏了我自己的配置。我怎样才能恢复我正在寻找的功能?我尝试了很多配置,但每个配置都有其问题。
我目前有这个~/.gitconfig:
[push]
default = current
[branch]
autoSetupMerge = always
Run Code Online (Sandbox Code Playgroud)
但是当我在本地创建一个新分支,然后提交并推送时,它会显示“一切都是最新的”。如果我随后运行git push origin <branch_name>它,它确实会推动更改。
这些设置似乎也不起作用:
[push]
default = matching
[branch]
autoSetupMerge = always
Run Code Online (Sandbox Code Playgroud) 我有编辑器设置,我想在所有存储库中传播.如果用户定义了自己的设置,那么它当然应该删除存储库选择.
我想这样做,因为我有一个班级,每个学生都克隆了回购.通常他们忘记设置core.editor设置并最终搞乱vi,通常会崩溃回购就像他们已经诅咒魔法力量一样.
因为它适用于我的HOME目录,我尝试在我的repo目录中使用.gitconfig,就像我设置.gitignore一样,但它似乎不起作用.
编辑:
--global 让用户设置其首选项来覆盖repo,但是它不允许他在克隆时获取repos配置.我试图从公司git仓库克隆,但一段时间后总是收到此错误消息:
致命:无法访问URL:CONNECT后从代理收到HTTP代码503
我有以下.gitconfig文件:
[https]
sslVerify = false
proxy = https://proxy.corpadderess:8080
[http]
sslVerify = false
proxy = http://proxy.corpadderess:8080
Run Code Online (Sandbox Code Playgroud) 默认情况下,在 git repo root 中运行时,它看起来是空的:
git config core.hooksPath
Run Code Online (Sandbox Code Playgroud)
如果我们将 git config core.hooksPath 更改为git config core.hooksPath myhooks,我的问题是 - 我们如何将其更改回默认值?我们应该取消设置值(如何?),还是应该将其设置.git/hooks为 in git config core.hooksPath .git/hooks?
我是 Git 的初学者。我通过互联网找到那些。
我所知道的是
我可以知道这些配置之间的任何其他差异吗?
git-config ×10
git ×9
commit ×1
corporate ×1
git-branch ×1
git-commit ×1
git-merge ×1
git-push ×1
git-stash ×1
githooks ×1
github ×1
proxy ×1