2016-05-25 7 views
4

Ich benutze Ubuntu 16.04 und Mercurial 3.7.3. Unser Repository ist nur als SMB-Freigabe zugänglich. Ich, den Anteil in meinem Home-Ordner in einen Ordner geklont (I vereinfacht die Namen ein Bit):Mercurial: "hg push" zu smb share funktioniert nicht

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

Mein Problem ist, dass ich alles tun kann (ziehen, begehen usw.), sondern drücken:

> 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' 

Wenn ich 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! 

Vielen Dank für Ihre Hilfe im Voraus!

UPDATE

habe ich versucht, das gleiche in Windows 7 und hg push gearbeitet.

UPDATE 2

Die SMB-Freigabe auf einem Windows-Rechner.

Die Ausgabe von hg push auf Ubuntu mit der --debug Option (commit schiebe ich versuchte, ist anders als die oben):

> 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' 
+0

Auf welchem ​​System (Linux/Windows etc.) läuft der SMB-Server? –

+0

Können Sie es auch versuchen, wenn das Hinzufügen von '--debug' als Argument nützliche Informationen liefert? Zeigt 'dmesg' etwas Interessantes, während Sie den Push versuchen? Running 'dmesg | tail -f' könnte hilfreich sein, um zu sehen, was passiert. –

+0

@ManuelJacob Bitte beachten Sie mein 2. Update. – kol

Antwort

1

Bitte, bitte, bitte verwenden Sie keine Netzwerk-Dateisysteme für jedes Versionskontrollsystem. Netzwerk-Dateisysteme verletzen einige der Konsistenzgarantien, von denen die meisten Versionskontrollsysteme abhängen - was Sie mit der Journaldatei sehen, ist mit ziemlicher Sicherheit ein Nebeneffekt davon.

Können Sie stattdessen einen http hg Server auf demselben Computer ausführen? Das wird deutlich reduzieren Sie Ihr Risiko von Datenverlusten.

Verwandte Themen