[PATCH v6 0/2] Honor .gitattributes with rebase --am

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



This series makes rebase --am honor the .gitattributes file for
subsequent patches when a patch changes it.

Changes from v5:
* Avoid leaking memory from already parsed filter rules.

Changes from v4:
* Wrap lines in apply.c.
* Handle merge and conflict-marker-size attributes.
* Add tests for am and am -3 in addition to rebase.

Changes from v3:
* Check for both addition and removal of .gitattributes files.
* Switch from "test_config" to "git config".

Changes from v2:
* Rename has_path_suffix to ends_with_path_components.

Changes from v1:
* Add has_path_suffix in a separate commit.

brian m. carlson (2):
  path: add a function to check for path suffix
  am: reload .gitattributes after patching it

 apply.c           | 11 ++++++++++
 convert.c         | 21 ++++++++++++++++++-
 convert.h         |  6 ++++++
 ll-merge.c        | 19 +++++++++++++----
 ll-merge.h        |  1 +
 path.c            | 39 +++++++++++++++++++++++++++--------
 path.h            |  3 +++
 t/t3400-rebase.sh | 36 ++++++++++++++++++++++++++++++++
 t/t4150-am.sh     | 52 +++++++++++++++++++++++++++++++++++++++++++++++
 9 files changed, 174 insertions(+), 14 deletions(-)

Range-diff against v5:
1:  2077a0829e ! 1:  1573fbd82d am: reload .gitattributes after patching it
    @@ convert.c: static void convert_attrs(const struct index_state *istate,
      
     +void reset_parsed_attributes(void)
     +{
    ++	struct convert_driver *drv, *next;
    ++
     +	attr_check_free(check);
     +	check = NULL;
     +	reset_merge_attributes();
    ++
    ++	for (drv = user_convert; drv; drv = next) {
    ++		next = drv->next;
    ++		free((void *)drv->name);
    ++		free(drv);
    ++	}
    ++	user_convert = NULL;
    ++	user_convert_tail = NULL;
     +}
     +
      int would_convert_to_git_filter_fd(const struct index_state *istate, const char *path)



[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]

  Powered by Linux