Create
cancel
Showing results for 
Search instead for 
Did you mean: 
Sign up Log in

Smudge and Clean filters

RiaanP-ZA February 18, 2019

Smudge work, Clean is ignored.

In the attributes file

C:\Users\Riaan\.config\git\attributes

*.cbl filter=Promote

git config --global filter.Promote.smudge "/C/Users/Riaan/.config/git/Promote.smudge"
git config --global filter.Promote.clean "/C/Users/Riaan/.config/git/Promote.clean"

 

Promote.smudge

#! /bin/sh -f
sed \
-e 's|/u/files1/|U:\\files1\\|' \
-e 's|"SYSTEM"|"MFSYSTEM"|' \
$1

 

Promote.clean

#! /bin/sh -f
sed \
-e 's|U:\\files1\\|/u/files1/|' \
-e 's|"MFSYSTEM"|"SYSTEM"|' \
$1

(there are more similar lines excluded for simplicity)

 

Purpose of both filters are mostly changing linux folder structures into windows format "/u/" into "U:\"

Cloning a repository and the smudge filter does execute. Master repository is on linux and my created repository got all the filenames in the windows format. 

 

Promoting programs back to linux and the trigger is just not executed at all. What else must be set.

 

Note, I'm running git bash on a Windows 10 PC.

 

 

 

1 answer

1 accepted

0 votes
Answer accepted
RiaanP-ZA February 20, 2019

Found it eventually.

the paths in the config file is a mix between Windows and Linux format

Must use Windows c:
but Linux forward slashes 

[filter "Promote"]
clean = "C:/Users/Riaan/.config/git/Promote.clean"
smudge = "C:/Users/Riaan/.config/git/Promote.smudge"

Suggest an answer

Log in or Sign up to answer
TAGS
AUG Leaders

Atlassian Community Events