hg clone -6ren">
gpt4 book ai didi

Mercurial: "hg push"到 smb 共享不起作用

转载 作者:行者123 更新时间:2023-12-02 20:50:14 24 4
gpt4 key购买 nike

我使用 Ubuntu 16.04 和 Mercurial 3.7.3。我们的存储库只能作为 SMB 共享进行访问。我将共享克隆到我的主文件夹中的一个文件夹(我稍微简化了名称):

> hg clone "/run/user/1000/gvfs/smb-share:server=xyz.com,share=abc$/Repo" Repo

我的问题是我可以做任何事情(拉取、提交等),但推:

> hg push -v
pushing to /run/user/1000/gvfs/smb-share:server=xyz.com,share=abc$/Repo
searching for changes
2 changesets found
uncompressed size of bundle content:
876 (changelog)
724 (manifests)
586 a.txt
2869 b.txt
34900 c.rpm
37325 d.rpm
abort: Operation not supported: '/run/user/1000/gvfs/smb-share:server=xyz.com,share=abc$/Repo/.hg/store/journal'

如果我使用 sudo:

> sudo hg push -v
[sudo] password for kol:
pushing to /run/user/1000/gvfs/smb-share:server=xyz.com,share=abc$/Repo
abort: repository /run/user/1000/gvfs/smb-share:server=xyz.com,share=abc$/Repo not found!

提前感谢您的帮助!

更新

我在 Windows 7 中尝试了相同的操作,并且 hg Push 有效。

更新2

SMB 共享位于 Windows 计算机上。

使用 --debug 选项在 Ubuntu 上执行 hg Push 的输出(我尝试推送的提交与上面的不同):

> hg push -v --debug
pushing to /run/user/1000/gvfs/smb-share:server=xyz.com,share=abc$/Repo
query 1; heads
searching for changes
all remote heads known locally
listing keys for "phases"
checking for updated bookmarks
listing keys for "bookmarks"
listing keys for "bookmarks"
1 changesets found
list of changesets:
9ce3f6fbf7217a7eea79cf21ccbb2d7fc851cbd3
bundle2-output-bundle: "HG20", 4 parts total
bundle2-output-part: "replycaps" 155 bytes payload
bundle2-output-part: "check:heads" streamed payload
bundle2-output-part: "changegroup" (params: 1 mandatory) streamed payload
bundle2-output-part: "pushkey" (params: 4 mandatory) empty payload
abort: Operation not supported: '/run/user/1000/gvfs/smb-share:server=xyz.com,share=abc$/Repo/.hg/store/journal'

最佳答案

出于某种原因,这似乎不适用于 GVFS 安装的目录。不过,CIFS 可以工作。因此,要推送到远程存储库,请通过 CIFS 挂载它。

sudo mount -t cifs -o user=your_remote_username,domain=your_remote_domain,uid=$(id -u),gid=$(id -g) "//remote.server.com/path/to/remote/directory"/media/your_user/smb-mount

确保设置您的远程 (SMB) 用户名​​和域。此外,如果服务器发送文件的所有权信息,则可能需要添加 forceuid,forcegid 选项。有关该命令的完整说明,请参阅 Mount cifs Network Drive: write permissions and chown .

关于Mercurial: "hg push"到 smb 共享不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37442664/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com