Incorrect detection of modified/renamed files
Nobody has claimed this yet.
Assessment
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Newbie friendliness
- 28/100
Research direction
Start with the shown Python snippet and the repo.status() entry point, then reproduce the listed flags against the corresponding git status output. Determine whether the missing or differing rename records are expected behavior or a bug, and document the expected result and a reproducible verification path.
Written by the indexing model from the issue text.
Description
Test code:
import pygit2
repo = pygit2.Repository(pygit2.discover_repository(<repo_path>))
status = repo.status()
for filepath, flags in status.items():
print(filepath, flags)
Running Result:
child.py 128
example.py 128
mvv.txt 513
mvvv.txt 4
name2.py 128
parent.py 128
x/mvv.txt 128
x/mvvv.txt 513
x/parent2.py 128
xname.py 128
zname.py 512
zname1.py 128
However, git status given me the result as:
On branch master
Changes to be committed:
(use "git restore --staged <file>..." to unstage)
renamed: mvvv.txt -> mvv.txt
new file: x/mvvv.txt
Changes not staged for commit:
(use "git add/rm <file>..." to update what will be committed)
(use "git restore <file>..." to discard changes in working directory)
deleted: mvv.txt
deleted: x/mvvv.txt
deleted: zname.py
Untracked files:
(use "git add <file>..." to include in what will be committed)
.idea/
child.py
example.py
name2.py
parent.py
x/mvv.txt
x/parent2.py
xname.py
zname1.py
Which contains the renamed records.
Why this happened?
(If you want the test repo, I can zip it and send to your team mail if anyone provide me one.)
- Dominant language
- Python
- Stars
- 1.7k
- Forks
- 408
- Avg merge
- 2d 57m
- Merged PRs (30d)
- 7
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from libgit2/pygit2
-
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
-
Difficulty 1/5 Under an hour Newbie friendliness 88/100
-
Difficulty 4/5 3-5 days Newbie friendliness 45/100
-
Difficulty 3/5 1-2 days Newbie friendliness 48/100
-
Difficulty 3/5 1-2 days Newbie friendliness 55/100
Similar issues
-
bug
Difficulty 2/5 1-3 hours Newbie friendliness 90/100
learningequality/ricecooker#747 ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
BSData/horus-heresy-3rd-edition#3171 ·
-
enhancement
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
-
Difficulty 2/5 1-3 hours Newbie friendliness 76/100
run-llama/llama_index#23199 ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 84/100
KhronosGroup/glTF-Blender-IO#2769 ·