由于你没有进行过特别的设定,所以 不管它是往 上传还是往你公司的服务器上传,都会以一个完全相同的身份上传,这有时候会造成困扰,比如说这样:
但其实这是我公司的服务器,我不想让它以 的身份上传,我想只有在我往 上传的时候才以 上传,而我往公司服务器上传的时候就以 的身份上传,那该怎么做呢?
最直接的方法是在你 下来的仓库里,有一个 文件夹, 文件夹里有一个 文件,在这个文件里写上
就行了。
但问题是我有几十个仓库,不能一个一个设吧,而且万一我忘记了怎么办?所以我们需要有一些自动化的小工具来帮助我们完成这件事情。
首先,你要先建立这么一个文件夹:
然后你要告诉 这个文件夹就是你的模板文件夹:
再然后,你在这个文件夹里放上一个钩子文件:
这个钩子文件的内容就是下面这样:
切记,一定要赋予这个文件可执行权限,否则你的钩子工作不起来:
接下来,你还要再建立另一个文件:
这个文件的内容是像下面这样:
在这里,我们指明了如果仓库来源是 的话我们用哪个用户,如果仓库来源是公司服务器的话又该用哪个用户。
做完了这些事,我们来重新 一下我们的仓库看看吧:
可以看到,已经设置成功了。再来看一下克隆之后生成的配置文件吧:
在这里我们看到文件末尾自动增加了两行关于身份的配置,有了这两行,我们再也不用担心 的时候弄错身份了。
整个原理其实就是利用了 的三个特性:初始模板、钩子函数和本地配置。在初始模板里我们设定好了一个钩子函数,这样只要一执行克隆操作,首先 会把我们的模板文件里的钩子函数复制到本地仓库里,然后开始执行这个钩子函数,最后根据 地址设置我们的本地配置。
以上这些代码其实并不是我写的,而是来源于一个 项目,感兴趣的同学可以去这里(https://github.com/DrVanScott/git-clone-init)参观学习。
觉得本文对你有帮助?请分享给更多人。
关注 “程序员宝库”微信公众号,直接获取各种编程资料!
领取专属 10元无门槛券
私享最新 技术干货