Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
G
git2
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
lvzhengyang
git2
Commits
ca9f6b98
Commit
ca9f6b98
authored
3 years ago
by
Edward Thomson
Browse files
Options
Browse Files
Download
Plain Diff
Merge remote-tracking branch 'pr/6159'
parents
da5385c6
a3436cde
Hide whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
66 additions
and
1 deletions
+66
-1
src/diff_tform.c
+1
-1
tests/resources/renames/.gitted/objects/41/a766bb079e18ff6a24571831bd751168799a02
+2
-0
tests/resources/renames/.gitted/objects/ba/8b004914491b129b4feff51b5fd8553b8e8156
+0
-0
tests/resources/renames/.gitted/objects/e5/6d39ca6d946331aa79c9c443d46c8a6ed4f550
+0
-0
tests/resources/renames/.gitted/refs/heads/case-insensitive-status
+1
-0
tests/status/renames.c
+62
-0
No files found.
src/diff_tform.c
View file @
ca9f6b98
...
...
@@ -375,7 +375,7 @@ static int apply_splits_and_deletes(
size_t
i
;
git_diff_delta
*
delta
;
if
(
git_vector_init
(
&
onto
,
expected_size
,
git_diff_delta_
_cmp
)
<
0
)
if
(
git_vector_init
(
&
onto
,
expected_size
,
diff
->
deltas
.
_cmp
)
<
0
)
return
-
1
;
/* build new delta list without TO_DELETE and splitting TO_SPLIT */
...
...
This diff is collapsed.
Click to expand it.
tests/resources/renames/.gitted/objects/41/a766bb079e18ff6a24571831bd751168799a02
0 → 100644
View file @
ca9f6b98
File added
This diff is collapsed.
Click to expand it.
tests/resources/renames/.gitted/objects/ba/8b004914491b129b4feff51b5fd8553b8e8156
0 → 100644
View file @
ca9f6b98
File added
This diff is collapsed.
Click to expand it.
tests/resources/renames/.gitted/objects/e5/6d39ca6d946331aa79c9c443d46c8a6ed4f550
0 → 100644
View file @
ca9f6b98
File added
This diff is collapsed.
Click to expand it.
tests/resources/renames/.gitted/refs/heads/case-insensitive-status
0 → 100644
View file @
ca9f6b98
41a766bb079e18ff6a24571831bd751168799a02
This diff is collapsed.
Click to expand it.
tests/status/renames.c
View file @
ca9f6b98
...
...
@@ -781,3 +781,65 @@ void test_status_renames__rename_threshold(void)
git_index_free
(
index
);
}
void
test_status_renames__case_insensitive_h2i_and_i2wc
(
void
)
{
git_status_list
*
statuslist
;
git_status_options
opts
=
GIT_STATUS_OPTIONS_INIT
;
git_reference
*
head
,
*
test_branch
;
git_checkout_options
checkout_opts
=
GIT_CHECKOUT_OPTIONS_INIT
;
git_str
path_to_delete
=
GIT_STR_INIT
;
git_str
path_to_edit
=
GIT_STR_INIT
;
git_index
*
index
;
git_strarray
paths
=
{
NULL
,
0
};
struct
status_entry
expected
[]
=
{
{
GIT_STATUS_INDEX_RENAMED
|
GIT_STATUS_WT_MODIFIED
,
"sixserving.txt"
,
"sixserving-renamed.txt"
},
{
GIT_STATUS_INDEX_DELETED
,
"Wow.txt"
,
"Wow.txt"
}
};
// Checkout the correct branch
checkout_opts
.
checkout_strategy
=
GIT_CHECKOUT_FORCE
;
cl_git_pass
(
git_reference_lookup
(
&
head
,
g_repo
,
"HEAD"
));
cl_git_pass
(
git_reference_symbolic_set_target
(
&
test_branch
,
head
,
"refs/heads/case-insensitive-status"
,
NULL
));
cl_git_pass
(
git_checkout_head
(
g_repo
,
&
checkout_opts
));
cl_git_pass
(
git_repository_index
(
&
index
,
g_repo
));
// Rename sixserving.txt, delete Wow.txt, and stage those changes
rename_file
(
g_repo
,
"sixserving.txt"
,
"sixserving-renamed.txt"
);
cl_git_pass
(
git_str_joinpath
(
&
path_to_delete
,
git_repository_workdir
(
g_repo
),
"Wow.txt"
));
cl_git_rmfile
(
path_to_delete
.
ptr
);
cl_git_pass
(
git_index_add_all
(
index
,
&
paths
,
GIT_INDEX_ADD_FORCE
,
NULL
,
NULL
));
cl_git_pass
(
git_index_write
(
index
));
// Change content of sixserving-renamed.txt
cl_git_pass
(
git_str_joinpath
(
&
path_to_edit
,
git_repository_workdir
(
g_repo
),
"sixserving-renamed.txt"
));
cl_git_append2file
(
path_to_edit
.
ptr
,
"New content
\n
"
);
// Run status
opts
.
flags
|=
GIT_STATUS_OPT_INCLUDE_UNTRACKED
;
opts
.
flags
|=
GIT_STATUS_OPT_RENAMES_INDEX_TO_WORKDIR
;
opts
.
flags
|=
GIT_STATUS_OPT_RENAMES_HEAD_TO_INDEX
;
opts
.
flags
|=
GIT_STATUS_OPT_SORT_CASE_INSENSITIVELY
;
cl_git_pass
(
git_status_list_new
(
&
statuslist
,
g_repo
,
&
opts
));
check_status
(
statuslist
,
expected
,
2
);
git_status_list_free
(
statuslist
);
git_index_free
(
index
);
git_str_dispose
(
&
path_to_delete
);
git_str_dispose
(
&
path_to_edit
);
git_reference_free
(
head
);
git_reference_free
(
test_branch
);
}
This diff is collapsed.
Click to expand it.
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment