Skip to contentSkip to conversation

git and linux kernel source

DISCUSSION Joe Perches 3 participants 6 messages Jun 15, 2016

lore
Share & tools
lore
#0 lore raw

A few linux kernel source and git questions:

What's the best procedure to handle a tree-wide source tranformation? For instance:

git branch foo2bar
egrep -r -w --include=*.[ch] -l "foo" * | \
xargs perl -pi -e 's/\bfoo\b/bar/msg'
git commit -a -m "use bar not foo"

Is there a way to separate the resultant single patch into multiple patches by subdirectory? Perhaps some git-rev-parse option?

  git-format-patch -p --stat -o outputdir

Is there a way to automatically include the appropriate MAINTAINER and mailing lists from the MAINTAINERS file for each subdirectory?

git-send-mail --to $APPROPRIATE_MAINTAINER \
-cc [email protected]

Any ideas or help?

#1 lore raw
Quoted 5 lines · Joe Perches

A few linux kernel source and git questions:

What's the best procedure to handle a tree-wide source tranformation? For instance:

Quoted 8 lines

git branch foo2bar
egrep -r -w --include=*.[ch] -l "foo" * | \
xargs perl -pi -e 's/\bfoo\b/bar/msg'
git commit -a -m "use bar not foo"

Is there a way to separate the resultant single patch into multiple patches by subdirectory? Perhaps some git-rev-parse option?

Something like

for each sub/dir:
git add sub/dir
git commit -m "use bar not foo in sub/dir"

should do it. (Of course, in the particular case above the patches you ended up with probably wouldn't compile individually.)

--b.

#2 lore raw
Quoted 8 lines · J. Bruce Fields
Quoted 2 lines

Is there a way to separate the resultant single patch into multiple patches by subdirectory? Perhaps some git-rev-parse option?

Something like
for each sub/dir:
git add sub/dir
git commit -m "use bar not foo in sub/dir"
should do it. (Of course, in the particular case above the patches you ended up with probably wouldn't compile individually.)

Nor would it likely survive a git bisect, but it's a start. My goal is to eventually commit by maintainer.

Thanks, Joe

#3 lore raw
In reply to J. Bruce Fields
Quoted 15 lines · bfields
Quoted 5 lines · Joe Perches

A few linux kernel source and git questions:

What's the best procedure to handle a tree-wide source tranformation? For instance:

Quoted 8 lines

git branch foo2bar
egrep -r -w --include=*.[ch] -l "foo" * | \
xargs perl -pi -e 's/\bfoo\b/bar/msg'
git commit -a -m "use bar not foo"

Is there a way to separate the resultant single patch into multiple patches by subdirectory? Perhaps some git-rev-parse option?

Quoted 8 lines

Something like

for each sub/dir:
git add sub/dir
git commit -m "use bar not foo in sub/dir"

should do it. (Of course, in the particular case above the patches you ended up with probably wouldn't compile individually.)

OK, now I feel like I have to ask--you're not seriously considering doing anything like that, are you?

--b.

#4 lore raw
Quoted 20 lines · J. Bruce Fields
Quoted 19 lines · bfields
Quoted 5 lines · Joe Perches

A few linux kernel source and git questions:

What's the best procedure to handle a tree-wide source tranformation? For instance:

Quoted 7 lines

git branch foo2bar
egrep -r -w --include=*.[ch] -l "foo" * | \
xargs perl -pi -e 's/\bfoo\b/bar/msg'
git commit -a -m "use bar not foo"

Is there a way to separate the resultant single patch into multiple patches by subdirectory? Perhaps some git-rev-parse option?

Something like

for each sub/dir:
git add sub/dir
git commit -m "use bar not foo in sub/dir"

Quoted 7 lines
Quoted 2 lines

should do it. (Of course, in the particular case above the patches you ended up with probably wouldn't compile individually.)

OK, now I feel like I have to ask--you're not seriously considering doing anything like that, are you?

--b.

Have you seen LKML recently? Maybe that will answer your question. (A 500+ patch mail bomb . . .)

Rogan

#5 lore raw
Quoted 21 lines · Rogan Dawes
Quoted 20 lines · J. Bruce Fields
Quoted 19 lines · bfields
Quoted 5 lines · Joe Perches

A few linux kernel source and git questions:

What's the best procedure to handle a tree-wide source tranformation? For instance:

Quoted 7 lines

git branch foo2bar
egrep -r -w --include=*.[ch] -l "foo" * | \
xargs perl -pi -e 's/\bfoo\b/bar/msg'
git commit -a -m "use bar not foo"

Is there a way to separate the resultant single patch into multiple patches by subdirectory? Perhaps some git-rev-parse option?

Something like

for each sub/dir:
git add sub/dir
git commit -m "use bar not foo in sub/dir"

Quoted 8 lines
Quoted 5 lines
Quoted 2 lines

should do it. (Of course, in the particular case above the patches you ended up with probably wouldn't compile individually.)

OK, now I feel like I have to ask--you're not seriously considering doing anything like that, are you?
--b.

Have you seen LKML recently? Maybe that will answer your question. (A 500+ patch mail bomb . . .)

Yes. And it looks like preparation for doing the above kind of splitting-by-maintainer. Which may not be a sensible thing to do for a variety of reasons that I assume people know. But the patch bomb suggests I shouldn't make that kind of assumption.

--b.