What is missing from Git v2.0

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

 



Hi,

I had already given up on merging important features to Git upstream,
and then one of the features I've had in git-fc (my fork) for quite
some time suddenly got attention (the @{publish} branch), but
everybody forgot I already did the work. So maybe there's other
features in a similar situation.

= The publish tracking branch =

Git's triangular workflow support is definitely lacking, and although
there are many ideas and workarounds, the simplest and most
user-friendly way to fix the issues is by introducing the concept of a
publish tracking branch, similar to the upstream tracking branch.

Fortunately this might actually get into v2.0.

[1][2]

= Reject non-fast-forward pulls by default =

Many new-comers end up making merges by mistake when they pull because
they don't understand what is a non-fast-forward and what they should
actually be doing. Most people, even Linus Torvalds, agreed that by
default `git pull` should fail and guide the user, instead of silently
making a merge which might not be what the user wants (even though he
doesn't know it), and messing up the project's history, which affects
other people.

The patches were sent, the issues were addressed, people agreed, and
yet nothing happened.

[3][4]

= Use "stage" instead of "index" =

Everybody, and by everybody I literally mean everyone except Junio,
have agreed that "index" is a horrible name of the high-level concept
(not the actual index file) of the pace where the user drafts a
commit. Different actions were proposed to move towards a saner name,
and the simplest sensible one seems to be to start renaming the
confusing --cached and --index options to --stage and --no-work, and
also to add a new `git stage` command.

Nothing happened.

[5][6][7][8]

= Default aliases =

Every single version control tool out there has default aliases (e.g.
co = checkout) except Git.

Every argument against default aliases was basically refuted, yet my
patches went nowhere. And the users still expect these aliases.

[9]

[1] http://thread.gmane.org/gmane.comp.version-control.git/235981
[2] http://thread.gmane.org/gmane.comp.version-control.git/240030
[3] http://thread.gmane.org/gmane.comp.version-control.git/240030
[4] http://thread.gmane.org/gmane.comp.version-control.git/235981
[5] http://thread.gmane.org/gmane.comp.version-control.git/233295
[6] http://thread.gmane.org/gmane.comp.version-control.git/197111
[7] http://thread.gmane.org/gmane.comp.version-control.git/166675
[8] http://thread.gmane.org/gmane.comp.version-control.git/115666
[9] http://thread.gmane.org/gmane.comp.version-control.git/235145

-- 
Felipe Contreras
--
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]