我希望能够在发布版本时在存储库上创建标签。这是使用gnumake和git,它们都在Windows 10下运行,在命令提示符下运行make。
因此,在我的makefile中,我添加了以下配方:
tag_commit:
git tag tag_name
但是当我调用此git时,它抱怨找不到用户凭据,因为需要对其进行配置。但是我已经知道它们是在全局空间中配置的,因为如果我在命令提示符下运行git config --global -l
,则会显示它们。作为测试,我将tag命令替换为:
tag_commit:
git config --global -l
并且返回说它无法在make.exe所在的路径中找到.gitconfig。它似乎不在实际驻留的c:\ programdata \ git文件夹中。我曾尝试将该文件夹添加到路径,但仍然无法使用。
我不知所措,接下来要去哪里检查。依赖于路径的makefile中的东西正在工作,而git本身可以在全局配置中运行。我认为我丢失了一些东西,但这是我第一次真正喜欢我的makefile和命令行git操作。
@@ thill我想提供了我需要的提示。调用make.exe
时,它会将所有内容作为shell脚本运行,而不仅仅是像我假设的那样在命令提示符下运行。从sh
运行git时,无论出于何种原因,它都在使用用户文件夹/path_to_mingw/home/user_name/
并在其中查找.gitconfig
。但是,因为其中没有全局git配置文件,所以我创建了一个指向.gitconfig
文件的符号链接。
从窗口命令提示符,我运行:
sh
cd /home/user_name
ln -s /path_to_my_config/.gitconfig
现在它对我有用。