The Wiert Corner – irregular stream of stuff

Jeroen W. Pluimers on .NET, C#, Delphi, databases, and personal interests

  • My badges

  • Twitter Updates

  • My Flickr Stream

  • Pages

  • All categories

  • Enter your email address to subscribe to this blog and receive notifications of new posts by email.

    Join 1,789 other followers

Archive for the ‘DVCS – Distributed Version Control’ Category

Hopefully one day there will be `git submodule remove`

Posted by jpluimers on 2019/12/04

I like that you can add git repositories inside eachother using git submodule add but when it’s time to say goodbye to a submodule you need some convoluted statements. So I really wish one day there will be git submodule remove.

Until then, these links will help you to get rid of a git submodule:

TL;DR you have to manually edit the below files:

  • .gitmodules
  • .git/config

Then you need to:

  • (recursively) remove the subdirectory containing the submodule in the repository
  • sometimes (recursively) the subdirectory containing the submodule in .git/modules

–jeroen

Posted in Development, DVCS - Distributed Version Control, git, Source Code Management | Leave a Comment »

Git: Push a new or existing repo to Github · GitHub

Posted by jpluimers on 2019/11/27

Since I tend to forget the exact statements for starting a fresh repository and push it to a git hoster like GitHub or GitLab: [WayBack] Git: Push a new or existing repo to Github · GitHub

–jeroen

Posted in Development, DVCS - Distributed Version Control, git, GitHub, GitLab, Software Development, Source Code Management | Leave a Comment »

Unorthodocs: Abandon your DVCS and Return to Sanity – bitquabit

Posted by jpluimers on 2019/11/21

Some interesting thoughts on DVCS: [WayBackUnorthodocs: Abandon your DVCS and Return to Sanity – bitquabit

Besides the very good point it raises about DVCS (Git, Mercurial and most other DVCSes treat the whole state of the repository as the atom) it also indicates quite a few shortcomings:

  • most people hardly ever need the full history to be off-line
  • having the full history means repositories get huge in size, including your off-line clone
  • pseudo-solutions for huge repository sizes – like git-LFS or git-annex – are a no-go because now you loose atomicity
  • huge repositories in file or commit counts make them slow, especially when the trees are deep
  • splitting up repositories isn’t a good idea either because again: you loose atomicity
  • all DVCS are hard, not just git, because they are distributed and full of features
  • the workflow for submitting pull requests is quite a bit longer than submitting a patch, even though merging in a DVCS can be hard too (despite atomicity which does help a lot for DVCS systems)

I see many other advantages of DVCS systems (for instance that you only need to locally have the branches you are interested in, way better tooling for DVCS systems, ditto for sites hosting DVCS), but it always a good thing to know the weak spots of what you are working with.

–jeroen

Posted in Development, DVCS - Distributed Version Control, git, Mercurial/Hg, Software Development, Source Code Management | Leave a Comment »

git tag – How to delete a git remote tag? – Stack Overflow

Posted by jpluimers on 2019/11/20

When working with git, often the brevity of a solution is remarkable. Remembering how it can be so short is the hard part. An explanation why helps, for instance with [WayBackgit tag – How to delete a git remote tag? – Stack Overflow by markdorison.

He explains why you end up with:

git push --delete <origin> <tagname>

Here, <origin> is your remote, and <tagname> the tag to delete.

He explains other ways, which is done by [WayBackgist.github.com/mobilemind/7883996 as well:

–jeroen

Posted in Development, DVCS - Distributed Version Control, git, Software Development, Source Code Management | Leave a Comment »

Gitless: a simple version control system built on top of http://gitless.com/

Posted by jpluimers on 2019/10/09

Time to experiment with [WayBack] Gitless: a simple version control system built on top of http://gitless.com/:

Gitless is an experiment to see what happens if you put a simple veneer on an app that changes the underlying concepts. Because Gitless is implemented on top of Git (could be considered what Git pros call a “porcelain” of Git), you can always fall back on Git.

It is open source at https://github.com/sdg-mit/gitless

via: UMass Amherst CICS Distinguished Lecture: Daniel Jackson (Massachusetts Institute of Technology) “Towards a Theory of Software Design”

–jeroen

Posted in Development, DVCS - Distributed Version Control, git, Software Development, Source Code Management | Leave a Comment »

 
%d bloggers like this: