linux对git没有访问权限,linux - 防止git在Linux中没有chmod权限的文件系统上失败 - SO中文参考 - www.soinside.com...

有点骇人听闻的解决方法是:

在具有足够许可权(即mktemp -d的情况下,按指定的意愿初始化一个空的repro]$ tempdir = $(mktemp -d)

$ git init $tempdir

Initialized empty Git repository in /tmp/tmp.pREa198fnx/.git/

将创建的.git文件夹移动到目标位置。$ mv $tempdir/.git /srv/server/sub/

mv: preserving times for './.git/branches': Operation not permitted

mv: preserving permissions for ‘./.git/branches’: Operation not permitted

mv: preserving times for './.git/hooks/applypatch-msg.sample': Operation not permitted

mv: preserving permissions for ‘./.git/hooks/applypatch-msg.sample’: Operation not permitted

mv: preserving times for './.git/hooks/commit-msg.sample': Operation not permitted

...

在移动过程中会出现一些错误,但不会阻止mv移动文件。

最后,git可以按预期工作:$ echo "Foo" > bar.txt

$ git add bar.txt

$ git commit -m "Added Foobar"

[master (root-commit) e232039] bar.txt

1 file changed, 1 insertion(+)

create mode 100755 bar.txt

$ git status

On branch master

nothing to commit, working tree clean

分支和结帐似乎可以正常工作,没有测试推/拉。

仍然会喜欢更干净的解决方案。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值