Re: git branch --set-upstream regression in master

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Jay Soffian <jaysoffian@xxxxxxxxx> writes:

> This used to be possible on the checked out branch:
>
>   $ git branch master --set-upstream origin/master
>
> Now it gives "fatal: Cannot force update the current branch." which is
> broken. You should be able to setup/change the tracking information on
> the checked out branch.
>
> It's apparently due to ci/forbid-unwanted-current-branch-update.

Does

	git branch --set-upstream master origin/master

work? If so then I wouldn't worry too much about it (your "arg then
option" should be forbidden in the longer term anyway). If not, we would
need to patch it.

> (BTW, --set-upstream still needs to be fixed so that these mean the same
> thing:
>
>   $ git branch master --set-upstream origin/master
>   $ git branch --set-upstream origin/master master

If we are doing anythning, I think it needs to be fixed not to allow the
former, period.

> .. to just allow:
>
>   $ git branch --set-upstream origin/master
>
> w/o having to specify the checked-out branch.

That may be a nice feature enhancement, post 1.7.7 release.

I took a brief look at --set-upstream codepath, and I have to say that the
implementation is totally broken with respect to an existing branch.

Given

	$ git branch master --set-upstream origin/master

it passes the exact same codepath as

	$ git branch master origin/master

uses, only with a different "track" flag, no?  That is, it calls a
function that is meant to _create_ branch "master" from given branch point
"origin/master", namely create_branch().  And then create_branch(),
contrary to its name, is littered with "dont_change_ref" special case to
work it around, depending on the value of "track".


--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]