Page Menu
Home
Software Heritage
Search
Configure Global Search
Log In
Paste
P140
Monolithic repository
Active
Public
Actions
Authored by
seirl
on Mar 1 2017, 12:30 PM.
Edit Paste
Archive Paste
View Raw File
Subscribe
Mute Notifications
Award Token
Flag For Later
Tags
None
Subscribers
None
#!/bin/bash
set
-e
rm -rf swh-merge
git clone https://forge.softwareheritage.org/source/swh-environment swh-merge
cd
swh-merge
../swh-environment/bin/ls-all-repos
|
while
read
i
;
do
url
=
$(
grep -A1
"\[
$i
\]"
.mrconfig
\
|
tail -n1
\
|
grep -o
"'[^']\+'"
\
|
head -n
1
\
|
sed
"s/'//g"
)
git remote add
${
i
}
_remote
"
$url
"
git fetch
${
i
}
_remote
git branch
${
i
}
_branch
${
i
}
_remote/master
git checkout
${
i
}
_branch
mkdir
${
i
}
/
git ls-tree -z --name-only HEAD
|
xargs -0 -I
{}
git mv
{}
${
i
}
/
git commit -m
"Move root files into subdirectory '
${
i
}
'"
git checkout master
#git read-tree --prefix=${i}/ -u ${i}_branch
#git commit -m "Merge repository subtree '${i}' into master"
git merge --allow-unrelated-histories
${
i
}
_branch
done
Event Timeline
seirl
created this paste.
Mar 1 2017, 12:30 PM
2017-03-01 12:30:20 (UTC+1)
Log In to Comment