Ich muss ein Skript schreiben, das das Ziehen aus einem mercurial Repo automatisiert. Gibt es trotzdem eine hg pull -u
, die beinhaltet, den angeforderten Benutzernamen und das Passwort im selben Befehl zu übergeben? Ich weiß, dass es eine interaktive Methode gibt, die das Standardverhalten ist, und ich möchte nicht den Benutzernamen und das Passwort in hgrc oder anderswo speichern, weil es von mehreren Benutzern verwendet wird, also gibt es eine Möglichkeit, den Benutzernamen und das Passwort über die Befehlszeile? Ich versuchte mit proc_open
in PHP, aber das funktionierte nicht so gut wie Echo zu STDIN.Mercurial (HG) Pull-Parameter: Benutzername und Passwort
Antwort
fand ich zwei Lösungen:
1.bieten Explizit die URL, einschließlich der vollständigen Anmeldeinformationen:
hg pull -u https://user:[email protected]/path
2. die Anmeldeinformationen mit --config Stellen, mit * als Präfix (von Victor Antwort):
hg pull -u --config auth.x.prefix=* --config auth.x.username=user --config auth.x.password=pass
Schön, beide funktionieren :) – radtek
Sie könnten in der Lage sein, die --config
Schalter zu bedienen, dass wie dies zu tun:
hg --config auth.username=USERNAME --config auth.password=PASSWORD pull -u
Ich persönlich habe noch nie getan, aber hoffentlich hilft dies.
Nein funktioniert nicht, ignorieren ungültiger [auth] Schlüssel 'Benutzername' Ignorieren ungültiger [Auth] Schlüssel 'Passwort' – radtek
Das Kennwort in der Befehlszeile übergeben ist unsicher, da andere Benutzer es mit ps
und ähnlichem sehen können. Was sollten Sie tun, ist entweder:
Kommunizieren mit
hg
an den Rohren Sie vonproc_open
zurück. Sie müssen die Ausgabe von Mercurial sorgfältig analysieren und ihm den Benutzernamen und das Passwort auf der Standardeingabe geben. Führen Sie Mercurial als:hg --config ui.interactive=yes
um sicherzustellen, dass es mit dir reden wird - sonst fürchte, ich bin, dass es erkennt, dass es keine TTY ist und Sie werden nicht an allen prompt.
Schreiben Sie eine temporäre Konfigurationsdatei mit einer
[auth]
section. Es wird wie folgt aussehen:[auth] x.prefix = output of "hg paths default" x.username = USERNAME x.password = PASSWORD
(Die
x
nicht wichtig ist, kann es alles sein.) Stellen Sie sicher, dass die Datei vom Benutzer nur lesbar ist, dass Sie als das Skript ausführen. Setzen Sie dann die UmgebungsvariableHGRCPATH
so, dass sie auf die Datei zeigt und Mercurial ausführt. Löschen Sie die Datei, wenn Sie fertig sind!
Es gibt eine libhg PHP library für die command server, aber ich sehe nichts über Benutzernamen oder Passwörter für Zug- oder Klon in dieser Bibliothek. Die Bibliothek ist in Arbeit, aber wenn sie reifer ist, schlage ich vor, sie zu benutzen. Aber jetzt sollten die oben genannten Ansätze Ihnen weiterhelfen.
Lösung 2 ist spezifisch für ein Repository. Do
[auth]
x.prefix = *
x.username = USERNAME
x.password = PASSWORD
, damit es für alle Repositories gilt. Wenn Sie dies in "~/.hgrc" setzen und die Erlaubnis von 600 geben, müssen Sie den HGRCPATH-Trick nicht machen. Lass es einfach da.
Das ist gearbeitet:
hg --config auth.rc.prefix=http://host/ --config auth.rc.username=user --config auth.rc.password=password pull -u http://host/full/path/to/repo
- 1. Mercurial: Abbruch: kein Benutzername geliefert (siehe „hg help config“)
- 2. Multyvac Benutzername und Passwort
- 3. Benutzername und Passwort Fehlerbehandlung
- 4. Wie angeben Benutzername und Passwort für hgsubversion
- 5. Mercurial HG Fall-Klapp Kollision?
- 6. Benutzername und Passwort in sqlite3
- 7. ASMX Benutzername und Passwort Sicherheit
- 8. Magit Passwort speichern und Benutzername
- 9. Mercurial-Befehl zum Kombinieren von hg pull; hg up
- 10. Mercurial hg keine geeignete Antwort von remote hg Fehler
- 11. VB- Benutzername & Passwort
- 12. SQL Query Benutzername: Passwort
- 13. PHP Benutzername/Passwort Sicherheit
- 14. PHP Benutzername Passwort Lösung
- 15. Benutzername Passwort anzeigen
- 16. bitbucket, "hg push" und "hg update"
- 17. Mercurial hg Subrepository-Problem - "abort: unknown revision"
- 18. Importieren von TFS-Verlauf in Mercurial (hg)
- 19. Mercurial/hg - Abbruch: ausstehende nicht festgeschriebene Zusammenführungen
- 20. VBScript FTP Login mit Benutzername und Passwort
- 21. Einfacher Benutzername und Passwort Validierung Java
- 22. möchten Benutzername und Passwort mit Javascript überprüfen
- 23. Firebase-Authentifizierung ohne Benutzername und Passwort
- 24. WCF TransportCredentialOnly Senden nicht Benutzername und Passwort
- 25. AutoFill Benutzername und Passwort in UIWebView
- 26. Senden Benutzername und Passwort für HTTP-Authentifizierung
- 27. Squid Proxy-Konfiguration für Benutzername und Passwort
- 28. Benutzername und Passwort Authentifizierung in eckigen
- 29. Unterschiedliche Ausgabe, gleicher Benutzername und Passwort
- 30. Site Admin ohne Benutzername und Passwort
Warum nicht SSH-Schlüssel verwenden? –