[PATCH] dim: Specify maintainer-tools branch name
Daniele Ceraolo Spurio
daniele.ceraolospurio at intel.com
Fri Nov 9 23:04:55 UTC 2018
On 09/11/2018 00:38, Daniel Vetter wrote:
> On Fri, Nov 9, 2018 at 2:28 AM Daniele Ceraolo Spurio
> <daniele.ceraolospurio at intel.com> wrote:
>>
>> When using worktree, the src repo might already have a master branch,
>> which would make dim setup fail. Use a different name to avoid
>> clashes. dim_update_branches is also expecting the branch to be
>> called maintainer-tools.
>>
>> Signed-off-by: Daniele Ceraolo Spurio <daniele.ceraolospurio at intel.com>
>
> I think the worktree stopped making sense, now that maintainer-tools
> is a completely free-standing repo without a simple git clone would be
> better. Plus maybe a git branch -m to rename the master branch to
> maintainer-tools to keep dim_update_branches happy.
>
> The worktree was really just to avoid having to constantly refetch
> unrelated kernel commits for the maintainer-tools checkout, while that
> was still living in drm-intel.
> -Daniel
Would something like this work?
function simple_setup_aux_checkout # name url directory [branch]
{
local name url dir remote branch
name=$1
url=$2
dir=$3
if [[ $# -eq 4 ]]; then
branch=$4
else
branch=$name
fi
echo "Setting up $dir ..."
if [ ! -d $dir ]; then
git clone $url $dir
remote=origin
fi
cd $dir
if [ -z "$remote" ]; then
remote=$(url_to_remote $url)
fi
if ! git_branch_exists $branch ; then
if git_branch_exists $name; then
git branch -m $name $branch
else
git checkout $branch -t $remote/$name
fi
fi
cd - > /dev/null
}
Or should I just add something tailored for maintainer-tools?
Thanks,
Daniele
>> ---
>> dim | 22 ++++++++++++++--------
>> 1 file changed, 14 insertions(+), 8 deletions(-)
>>
>> diff --git a/dim b/dim
>> index 3d6548568b56..78d69a5bd864 100755
>> --- a/dim
>> +++ b/dim
>> @@ -2082,25 +2082,31 @@ function dim_status
>> done
>> }
>>
>> -function setup_aux_checkout # name url directory
>> +function setup_aux_checkout # name url directory [branch]
>> {
>> - local name url dir remote
>> + local name url dir remote branch
>>
>> name=$1
>> url=$2
>> dir=$3
>>
>> + if [[ $# -eq 4 ]]; then
>> + branch=$4
>> + else
>> + branch=$name
>> + fi
>> +
>> echo "Setting up $dir ..."
>>
>> if [ ! -d $dir ]; then
>> if git help worktree &> /dev/null ; then
>> cd $DIM_PREFIX/$DIM_REPO
>> remote=$(url_to_remote $url)
>> - if ! git_branch_exists $name ; then
>> + if ! git_branch_exists $branch ; then
>> git_fetch_helper $remote
>> - git branch --track $name $remote/$name
>> + git branch --track $branch $remote/$name
>> fi
>> - git worktree add $DIM_PREFIX/$dir $name
>> + git worktree add $DIM_PREFIX/$dir $branch
>> else
>> git clone --reference=$DIM_PREFIX/$DIM_REPO/.git $url $dir
>> cd $dir
>> @@ -2113,8 +2119,8 @@ function setup_aux_checkout # name url directory
>> cd $dir
>> remote=$(url_to_remote $url)
>> fi
>> - if ! git_branch_exists $name ; then
>> - git checkout -t $remote/$name
>> + if ! git_branch_exists $branch ; then
>> + git checkout $branch -t $remote/$name
>> fi
>> cd - > /dev/null
>> }
>> @@ -2146,7 +2152,7 @@ function dim_setup
>>
>> cd $DIM_PREFIX
>>
>> - setup_aux_checkout master $maintainer_tools_https maintainer-tools
>> + setup_aux_checkout master $maintainer_tools_https maintainer-tools maintainer-tools
>>
>> setup_aux_checkout rerere-cache $drm_tip_ssh drm-rerere
>>
>> --
>> 2.19.1
>>
>> _______________________________________________
>> dim-tools mailing list
>> dim-tools at lists.freedesktop.org
>> https://lists.freedesktop.org/mailman/listinfo/dim-tools
>
>
>
More information about the dim-tools
mailing list