Checkout with modified but not dirty submodules
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 4/5
- Tempo stimato
- 3-5 giorni
- Idoneità per principianti
- 38/100
Direzione di ricerca
Non è indicato alcun file sorgente né alcun test. Inizia riproducendo il comportamento di checkout con un submodule il cui puntatore dell'indice è diverso e uno il cui contenuto è dirty, quindi traccia la gestione degli errori di checkout di libgit2sharp. Il lavoro è completato quando le modifiche che riguardano solo il puntatore non richiedono force, mentre i submodule dirty rimangono protetti e i relativi errori sottostanti vengono preservati.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Version : vNext & master
Native : 1.0.72 - git2-4d6362b
There are two types of modified submodules, one that shows as modified due to a index pointer(SHA) mismatch, and one due to the submodule's content actually being changed/modified. Git knows the different and does not require a 'checkout -force'. or a 'git submodule update' on each submodule before doing a checkout, but libgit2sharp/libgit2 does require the checkout to be forced.
Is this the intended/designed result with modified/index and modified/dirty submodules? Or a bug?
It is a thrown exception from libgit2, so I coded around it with a exception bound helper extension to determine if the errors are related to submodules and to go determine if just the index changed and thus it is safe to flip the force option on or if the submodules are dirty and what are the 'real' exceptions within each submodule and throw those. It just seems like this should be one in one the libraries like it is within git (IMHO)...
This will not be a forced git checkout:
diff --git a/external/cecil b/external/cecil
index 33d50b8..fc76b93 160000
--- a/external/cecil
+++ b/external/cecil
@@ -1 +1 @@
-Subproject commit 33d50b874fd527118bc361d83de3d494e8bb55e1
+Subproject commit fc76b93e3e0064b2d751796878f9cbe88df1d5f4
This would be a forced git checkout:
diff --git a/external/rx b/external/rx
index b29a4b0..17e8477 160000
--- a/external/rx
+++ b/external/rx
@@ -1 +1 @@
-Subproject commit b29a4b0fda609e0af33ff54ed13652b6ccf0e05e
-Subproject commit b29a4b0fda609e0af33ff54ed13652b6ccf0e05e-dirty
- Lingua principale
- C#
- Stelle
- 3.5k
- Fork
- 925
- Metriche di merge delle PR
- Nessuna PR unita negli ultimi 30g
Guida per i contributori
Apri la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di libgit2/libgit2sharp
-
Difficoltà 4/5 3-5 giorni Idoneità per principianti 52/100
libgit2/libgit2sharp#2193 · 2 commenti ·
-
Difficoltà 4/5 3-5 giorni Idoneità per principianti 38/100
libgit2/libgit2sharp#2192 · 1 commento ·
-
Website is down Aperta
Difficoltà 4/5 3-5 giorni Idoneità per principianti 20/100
libgit2/libgit2sharp#2191 · 2 reazioni ·
-
Difficoltà 3/5 1-2 giorni Idoneità per principianti 68/100
libgit2/libgit2sharp#2189 · 1 reazione ·
-
Difficoltà 3/5 1-2 giorni Idoneità per principianti 35/100
libgit2/libgit2sharp#2187 · 2 commenti ·
Tutte le issue di libgit2/libgit2sharp
Issue simili
-
bug
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 75/100
sillsdev/languageforge-lexbox#2665 ·
-
bug documentation frontend
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
azurenoops/spin_agent#975 ·
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 86/100
-
:watch: Not Triaged 11.0 fundamentals/subsvc
Difficoltà 2/5 1-3 ore Idoneità per principianti 92/100
dotnet/AspNetCore.Docs#37699 ·
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
SubtitleEdit/subtitleedit#15108 · 1 commento ·