On Mon, Mar 12, 2018 at 04:55:26PM -0700, Lucas De Marchi wrote:
> On Mon, Mar 12, 2018 at 04:08:41PM -0700, Rodrigo Vivi wrote:
> > qf_checkout implies that you need to have that baseline
> > on your local repository, what it is not good for a distributed
> > maintenance.
> > 
> > Let's make qf pull -f useful for the case we want to start
> > a clean rebase from anywhere.
> > 
> > v2: Remove dubious comments and use -f.
> > v3: Avoid git pull --ff-only breaking force so force with fetch
> >     and hard reset
> > 
> > Cc: Paulo Zanoni <paulo.r.zan...@intel.com>
> > Cc: Michel Thierry <michel.thie...@intel.com>
> > Cc: James Ausmus <james.aus...@intel.com>
> > Cc: Lucas De Marchi <lucas.demar...@intel.com>
> > Signed-off-by: Rodrigo Vivi <rodrigo.v...@intel.com>
> > ---
> >  qf | 26 +++++++++++++++++++++++---
> >  1 file changed, 23 insertions(+), 3 deletions(-)
> > 
> > diff --git a/qf b/qf
> > index 270bcf53000a..ad37064902b4 100755
> > --- a/qf
> > +++ b/qf
> > @@ -404,11 +404,18 @@ function qf_pull
> >  {
> >     cd_toplevel
> >  
> > -   qf fetch
> > +   qf_fetch
> >     cd patches
> > -   git pull --ff-only
> >  
> > -   qf co
> > +   if [[ $FORCE ]]; then
> > +           git fetch
> 
> qf_fetch already fetches from remote, so you can remove it from here.
> 
> > +           git reset --hard $(git rev-parse --abbrev-ref @{u})
> 
> There are also the cases in which the user changed the branch so
> `git rev-parse --abbrev-ref @{u}` may point to the wrong upstream or
> point nowhere:
> 
> $ cd patches
> $ git checkout -b bla
> $ git rev-parse --abbrev-ref @{u}
> fatal: no upstream configured for branch 'bla'
> $ git checkout --detach
> $ git rev-parse --abbrev-ref @{u}
> fatal: HEAD does not point to a branch
> 
> But then there would be other places to fix, like in qf_export.
> I'm not sure if it's worth the trouble to fix it, so with the removal of
> git fetch above,

hm... :(
yeap.... let's fix this later if we need.
For now let's focus on the current case we need here
where we don't change the branches

> 
> Reviewed-by: Lucas De Marchi <lucas.demar...@intel.com>

pushed, thanks.

> 
> > +   else
> > +           git pull --ff-only
> > +           qf_co
> > +   fi
> > +
> > +   cd ..
> >  }
> >  
> >  function qf_stage
> > @@ -587,6 +594,19 @@ function qf_usage
> >     echo "See '$qf help' for more information."
> >  }
> >  
> > +FORCE=
> > +while getopts f opt; do
> > +   case "$opt" in
> > +           f)
> > +                   FORCE=1
> > +                   ;;
> > +           *)
> > +                   echo "See '$qf help' for more information."
> > +                   exit
> > +   esac
> > +done
> > +shift $((OPTIND - 1))
> > +
> >  # qf subcommand aliases (with bash 4.3+)
> >  if ! declare -n subcmd=qf_alias_${subcommand//-/_} &> /dev/null || \
> >             test -z "${subcmd:-}"; then
> > -- 
> > 2.13.6
> > 
_______________________________________________
dim-tools mailing list
dim-tools@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dim-tools

Reply via email to