libgit2 / libgit2/libgit2sharp
Using CherryPick with CommitOnSuccess = false
Nadie ha tomado este issue todavía.
- Lenguaje dominante
- C#
- Estrellas
- 3.5k
- Forks
- 925
- Métricas de merge de PR
- Sin PR fusionados en 30 d
Descripción
Reproduction steps
using (var repo = new Repository("path\to\repo"))
{
var commit1 = repo.Lookup<Commit>("a05b011d89bbd5c9117840b71718ce2a1ee00376");
var masterTb = repo.Branches["refs/remotes/origin/release/1.0"];
var master = repo.CreateBranch("release/1.0", masterTb.Tip);
var updateMb = repo.Branches.Update(master,
b => b.TrackedBranch = masterTb.CanonicalName);
Commands.Checkout(repo, updateMb);
var result = repo.CherryPick(commit1, commit1.Author, new CherryPickOptions { CommitOnSuccess = false});
}
If i use CherryPick with CommitOnSuccess = false repo is left in cherry-pick state. For rebase there is abort and continue commands, but for cherry pick there is non.
I checked up code and if i use CommitOnSuccess = true there is git_repository_state_cleanup which clean up chery-pick state.
Is this a bug or there is some commands to reset state?
Expected behavior
cherry picked and exit cherry-pick state
Actual behavior
left in cherry-pick state
Version of LibGit2Sharp (release number or SHA1)
0.26.2
Operating system(s) tested; .NET runtime tested
Windows 10 Version 2004 10.0.19041
.Net Core 3.1
Guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Línea de trabajo
Comience con la API Repository.CherryPick y el manejo de CherryPickOptions; compare la ruta con CommitOnSuccess=false con el comportamiento de rebase abort/continue y la llamada a git_repository_state_cleanup descrita en el informe. Reproduzca el fragmento proporcionado con LibGit2Sharp 0.26.2; se considera completado cuando el repositorio ya no permanece en estado de cherry-pick o se documenta el comportamiento de reset compatible.
Escrito por el modelo de indexación a partir del texto del issue.
Evaluación
- Stack tecnológico
- csharp, git
- Área
- devtools
- Tipo de issue
- Error
- Dificultad
- 3/5
- Tiempo estimado
- 1-2 días
- Estado de actividad
- Estancado
- Claridad
- Bastante claro
- Aptitud para principiantes
- 38/100