J'essaie d'accéder à l'historique de validation d'une branche sur un référentiel distant. J'ai jeté un œil à la doc , mais je n'ai trouvé aucune information importante sur la manière d'accéder à l'historique de validation d'un dépôt distant à l'aide de mon client git local.
git log remotename/branchname
Affiche le journal d'une branche distante donnée de ce référentiel, mais uniquement les journaux que vous avez "récupérés" de leur référentiel vers votre "copie" personnelle du référentiel distant.
N'oubliez pas que votre clone du référentiel mettra à jour l'état de toutes les branches distantes en effectuant git fetch
. Vous ne pouvez pas vous connecter directement au serveur pour consulter le journal à cet endroit. Vous devez alors télécharger l'état du serveur avec git fetch
, puis consulter localement le journal des branches distantes.
Peut-être une autre commande utile pourrait être:
git log HEAD..remote/branch
qui vous montrera les commits qui sont dans la branche distante, mais pas dans votre branche actuelle (HEAD
).
NB "Origine" ci-dessous sert à représenter l'amont d'un référentiel cloné. Remplacez "Origine" par un nom descriptif pour le référentiel distant. "référence à distance" peut utiliser le même format que celui utilisé dans la commande clone.
git remote add Origin <remote reference>
git fetch
git log Origin/master
Vous pouvez uniquement afficher le journal sur un référentiel local, mais cela peut inclure les branches extraites de toutes les télécommandes que vous avez configurées.
Donc, si vous clonez un repo ...
git clone git@gitserver:folder/repo.git
La valeur par défaut est Origin/master
.
Vous pouvez ajouter une télécommande à ce référentiel, autre que Origin
ajoutons production
. Dans le dossier de clonage local:
git remote add production git@production-server:folder/repo.git
Si nous voulons un jour consulter le journal de production
, nous devrons faire:
git fetch --all
Cela va chercher dans TOUTES les télécommandes (chercher par défaut sans --all
ne chercherait que de Origin
)
Après avoir récupéré, nous pouvons consulter le journal sur la télécommande production
, vous devrez également spécifier la branche.
git log production/master
Toutes les options fonctionneront comme pour les journaux dans les succursales locales.
Je ne crois pas que ce soit possible. Je crois que vous devez cloner localement ce référentiel distant et y exécuter git fetch
avant de pouvoir lui envoyer un git log
.
Une méthode rapide consiste à cloner à l'aide du mot clé --bare
, puis à consulter le journal:
git clone --bare git@giturl tmpdir
cd tmpdir
git log branch
C'est ce qui a fonctionné pour moi:
git fetch --all
git log production/master
Notez que cela récupère toutes les télécommandes, c’est-à-dire potentiellement vous "devez cloner une valeur de 2 Go d’objets pour pouvoir parcourir les journaux de validation" .
Vous pouvez facilement obtenir le journal du serveur distant. Voici comment:
(1) Si vous utilisez git via ssh - connectez-vous simplement au serveur distant à l'aide de votre identifiant et mot de passe git - et chdir le dossier distant où votre référentiel existe - et exécutez la commande "git log" dans votre référentiel sur le serveur distant.
(2) Si vous utilisez git via le protocole de connexion standard d'Unix, envoyez simplement telnet à votre serveur distant et créez un journal git.
J'espère que cela t'aides.