我有一个带有repo/.git/config
文件的存储库,其中已定义别名。
是否有方便的方法将那些别名导入由repo-clone/.git/config
命令生成的git clone repo repo-clone
文件中?
这两个存储库位于不同的设备上,因此我无法使用this solution来使用全局配置文件($ HOME / .gitconfig)。
编辑
我找到了一个新答案,与克隆时导入别名的特殊情况有关,请参阅下面的注释。
答案 0 :(得分:3)
您不能仅作为克隆的自动结果就在目标存储库的配置中设置别名。这样的功能很容易被滥用,因为这意味着我可以诱使您克隆自己的存储库,并为其设置别名,这将使您运行自己选择的任意代码。很可能会使用。
“但是,马克,别名不能覆盖内置的git命令。”
好的,但是如果我要传播某种恶意软件,则可能有时只需要愚弄一些人即可。很多人有一个“ co”别名,或者在意思是“ checkout”时很难输入“ chekcout”。所以我可以给这样的东西起别名。您可能不想盲目地接受可能执行的任何旧clone
操作中的配置。
您可以创建一个脚本来设置别名配置,并将其包含在您的存储库中。然后,克隆回购协议的人可以运行脚本(如果他们信任您,或者已经检查过脚本并且对脚本的安全性感到满意)。
对于受信任的回购协议,您甚至可以设置一个在结帐或其他操作时运行的挂钩,以便可以在回购协议内容更改时更新别名配置。同样,由本地用户决定是否实际配置此挂钩,这是安全性所必需的。