Live data from Hacker News

Why SQLite does not use Git (2018)

sqlite.org

211–220 of 454 posts

Re: Why SQLite does not use Git (2018)

#211

I'm glad Fossil works for them, but this line is bothered me: > In contrast, Fossil is a single standalone binary which is installed by putting it on $PATH. That one binary contains all the functionality of core Git and also GitHub and/or GitLab. It manages a community server with wiki, bug tracking, and forums, provides packaged downloads for consumers, login managements, and so forth, with no extra software require…

[deleted]

Re: Why SQLite does not use Git (2018)

#212
post #180

Earlier quoted context omitted.

For what it’s worth, on windows without wsl you literally have to bring half of a whole unix with you to run git.

Not really. https://gitforwindows.org/

From that page: "Git for Windows provides a BASH emulation used to run Git from the command line. *NIX users should feel right at home, as the BASH emulation behaves just like the "git" command in LINUX and UNIX environments."

Re: Why SQLite does not use Git (2018)

#213

>Git focuses on individual branches, because that is exactly what you want for a highly-distributed bazaar-style project such as Linux. Linus Torvalds does not want to see every check-in by every contributor to Linux: such extreme visibility does not scale well. Contrast Fossil, which was written for the cathedral-style SQLite project and its handful of active committers Ugh...so after all that fanfare of how amazing…

I think [0] indicates that it does scale quite well, you can even test by comparing the 2. You can go from cloning to pushing on a repo in half the time. There's branches as well, so while the /timeline[1] seems too busy, you can always drop back to a forum or the bug tracker, which it has already.

  time fossil clone https://fossil-scm.org/
  time git clone https://github.com/drhsqlite/fossil-mirror

My results were

  fossil
   time > real    5m43.120s user    2m56.532s sys     0m48.246s
   ls -lh > 60M fossil-scm.fossil


  git
   time > real    10m35.043s user    5m58.427s sys     1m10.555s
   du -sh fossil-mirror/.git/ > 829M

[0]: https://fossil-scm.org/home/doc/trunk/www/stats.wiki [1]: https://fossil-scm.org/home/timeline

Re: Why SQLite does not use Git (2018)

#214
post #180

Earlier quoted context omitted.

For what it’s worth, on windows without wsl you literally have to bring half of a whole unix with you to run git.

Not really. https://gitforwindows.org/

Git BASH (from that page) is what they referred to when they said "you literally have to bring half of a whole unix with you to run git".

Re: Why SQLite does not use Git (2018)

#215

Earlier quoted context omitted.

> and do it well If only Git did it well! Ok that’s not fair. Git is pretty okay for the Linux open source project. But it’s pretty mediocre-to-bad for everything else. The D is DVCS is a waste of effort. Almost all projects are defacto centralized. In fact the D is anti-pattern that makes things like large binary files a still unsolved problem in Git. And no Git LFS doesn’t count. Source control should be capable fo…

> The D is DVCS is a waste of effort. until the de facto centralized remote goes offline and you’re stuck with no local history …

Local history doesn’t imply D. The D basically means that clients and servers are equivalent. You could have a centralized VCS with client-server asymmetry and still have local history.

Re: Why SQLite does not use Git (2018)

#216

Earlier quoted context omitted.

I’m so thankful that Rust is helping popularize the solo exe that “just works”. I don’t care if a program uses DLLs or not. But my rule is “ship your fucking dependencies”. Python is the worst offender at making it god damned impossible to build and run a fucking program. I swear Docker and friends only exist because merely executing a modern program is so complicated and fragile it requires a full system image.

> I’m so thankful that Rust is helping popularize the solo exe that “just works”. Wasn't it Go that did that? I mean, not only was Go doing that before Rust, but even currently there's maybe 100 Go-employed developers churning out code for every 1 Rust-employed developer.

Either way “Rust is helping” is true. And given that Go is a managed language it never really factored into the shared library debate to begin with, whereas Rust forces the issue.

Re: Why SQLite does not use Git (2018)

#217

Earlier quoted context omitted.

> it goes against the Unix philosophy of do one thing and do it well For me, Perl shows just how restricted that viewpoint was. After I learned Perl, I stopped caring about tr, and sed, and many of the other "one thing well" command-line tools. And I've no desire to swap out and modify the 's//' component of perl. Perl does "one thing" - interpret Perl programs - even though it also replaces many things. I know 'rmdi…

I like `rmdir` because I don't have to check if a directory that I think is empty is actually empty with `ls -la` before removing it. This happens a lot with moving stuff out of directories (sometimes to different destinations).

Even in that case, you can use "rm -d" instead of "rmdir".

  % mkdir herewulf
  % rm herewulf
  rm: herewulf: is a directory
  % rm -d herewulf
  %
  % mkdir herewulf
  % touch herewulf/nonempty.txt
  % 
  % rm herewulf/
  rm: herewulf/: is a directory
  % rm -d herewulf/
  rm: herewulf/: Directory not empty
  % rm herewulf/nonempty.txt
  % rm -d herewulf/
The only distinct feature of rmdir is that it won't remove things that aren't files:

  % touch herewulf
  % rm -d herewulf
  % touch herewulf
  % rmdir herewulf
  rmdir: herewulf: Not a directory
Is that "one thing well" really enough to justify its own tool?

Unix has always had a tension between "one thing well" and "one powerful tool".

Is 'cc' a preprocessor? A compiler? A linker? Yes!

Does 'date' show the current date (and time), set the system date, or convert between dates? Yes!

Re: Why SQLite does not use Git (2018)

#218

Earlier quoted context omitted.

I’m so thankful that Rust is helping popularize the solo exe that “just works”. I don’t care if a program uses DLLs or not. But my rule is “ship your fucking dependencies”. Python is the worst offender at making it god damned impossible to build and run a fucking program. I swear Docker and friends only exist because merely executing a modern program is so complicated and fragile it requires a full system image.

> I’m so thankful that Rust is helping popularize the solo exe that “just works”. Wasn't it Go that did that? I mean, not only was Go doing that before Rust, but even currently there's maybe 100 Go-employed developers churning out code for every 1 Rust-employed developer.

Ehhh. You can compile a single exe with C or C++. I’ve personally come across far more Rust tools than Go. But I don’t really touch anything web related. YMMV.

Re: Why SQLite does not use Git (2018)

#219

Earlier quoted context omitted.

All the time. I would say at least 50% of my code browsing is done from my phone. I make heavy use of the mobile GitHub web interface for this (find-references support has been a godsend, search is still meh, I hate how they keep breaking basic find-in-page with SPA jank). Also Searchfox [0] when I need to comb through Firefox code (fast, excellent, no complaints—well, I guess blame on mobile could be better). Contex…

Why are you so often in situations where you want to browse code but don’t have access to a general-purpose computer?

I do it when I want to separate out the thinking/understanding from the doing. I might want to mull over how to do something instead of jumping straight into coding, and I find train journeys an excellent opportunity for this. Or sometimes I want to assess dependencies, perhaps I want to choose a library for doing X, I can sit and read through them on my phone and at least get a feel for them and whittle the list down.

Re: Why SQLite does not use Git (2018)

#220

Earlier quoted context omitted.

Not really. https://gitforwindows.org/

Git BASH (from that page) is what they referred to when they said "you literally have to bring half of a whole unix with you to run git".

GitBash, AutoHotkey, Notepad++, 7zip and PowerToys are the basic installs I do on any Windows I am given.

Any dev opening a CMD is suspect, to me.

Post reply on HN