Repository.Checkout() doesn't unstage submodule changes
還沒有人認領這個 Issue。
評估
研究方向
從 Repository.Checkout 開始,使用 CheckoutModifiers.Force 重現所示的已暫存子模組情境。將其結果與 git checkout master --force 以及現有的 Reset(ResetMode.Hard, "master") 行為進行比較;當 Checkout 與 Git 一致地取消暫存子模組變更,或將差異記錄為預期行為時,即表示完成。
由索引模型根據 Issue 內容生成。
描述
If I have a repo in this status
On branch master
Changes to be committed:
(use "git reset HEAD <file>..." to unstage)
modified: App_Data/Submodule
modified: file.txt
with App_Data/Submodule being a git submodule and file.txt is just a normal file.
Running git checkout master --force will put the repo in this condition
On branch master
Changes not staged for commit:
(use "git add <file>..." to update what will be committed)
(use "git checkout -- <file>..." to discard changes in working directory)
modified: App_Data/Submodule (new commits)
no changes added to commit (use "git add" and/or "git commit -a")
but doing the same from LibGit2Sharp using the following code
using (var repo = new LibGit2Sharp.Repository(RepositoryPath))
{
repo.Checkout("master", new CheckoutOptions { CheckoutModifiers = CheckoutModifiers.Force });
}
leaves the repo in this state
On branch master
Changes to be committed:
(use "git reset HEAD <file>..." to unstage)
modified: App_Data/Submodule
Calling reset however works as expected.
using (var repo = new LibGit2Sharp.Repository(RepositoryPath))
{
repo.Reset(ResetMode.Hard, "master");
}
Is that behavior expected from LibGit2Sharp? Should I be calling Reset myself if I want to mirror exactly the same git behavior?
- 主要語言
- C#
- 星號
- 3.5k
- 分支
- 925
- PR 合併指標
- 30 天內沒有已合併 PR
貢獻指南
從這裡開始
- 先讀完整個 Issue,再讀專案的貢獻指南。
- 在 Issue 下留言說明你要接手 —— 這能避免兩個人做同樣的事。
- Fork 儲存庫,在一個分支上完成修改。
- 送出 Pull Request,並在描述裡引用這個 Issue 編號。
libgit2/libgit2sharp 的其他 Issue
-
難度 4/5 3-5 天 新手友好度 52/100
libgit2/libgit2sharp#2193 · 2 則留言 ·
-
難度 4/5 3-5 天 新手友好度 38/100
libgit2/libgit2sharp#2192 · 1 則留言 ·
-
Website is down 未關閉
難度 4/5 3-5 天 新手友好度 20/100
libgit2/libgit2sharp#2191 · 2 個 reaction ·
-
難度 3/5 1-2 天 新手友好度 68/100
libgit2/libgit2sharp#2189 · 1 個 reaction ·
-
難度 3/5 1-2 天 新手友好度 35/100
libgit2/libgit2sharp#2187 · 2 則留言 ·
查看 libgit2/libgit2sharp 的全部 Issue
相似的 Issue
-
bug
難度 1/5 1 小時以內 新手友好度 75/100
sillsdev/languageforge-lexbox#2665 ·
-
bug documentation frontend
難度 2/5 1-3 小時 新手友好度 72/100
azurenoops/spin_agent#975 ·
-
難度 2/5 1-3 小時 新手友好度 86/100
-
:watch: Not Triaged 11.0 fundamentals/subsvc
難度 2/5 1-3 小時 新手友好度 92/100
dotnet/AspNetCore.Docs#37699 ·
-
難度 2/5 1-3 小時 新手友好度 72/100
SubtitleEdit/subtitleedit#15108 · 1 則留言 ·