What do you think is proprietary with git?I don't like anything proprietary holding my source code.
What do you think is proprietary with git?I don't like anything proprietary holding my source code.
The .rar format is proprietary (and obsolete)For me, it is: "yyyy.mm.dd-hhmm code name.rar"
I don't like anything proprietary holding my source code.
It's in the cloud and requires internet access and an account to reach it.What do you think is proprietary with git?
are you confusing git with github by any chance?It's in the cloud and requires internet access and an account to reach it.
It's in the cloud and requires internet access and an account to reach it.
git isn't anything I'm interested in pursuing.
One of my customers got royally burned by the Dell Vault, and that does color my opinion about internet storage.
git init . && git add * && git commit -m “initial commit”
and you have saved the current directory’s contents into an entirely local git repository (in the .git/ directory created wherever you pointed git init
). To see what has changed at some point later, a simple git diff
is what you need. fossil
for anything that will outlive the current environment and git for /etc. cd /etc
git init
git add .
git commit -m "initial commit"
git diff
, then:cd /etc
git add .
git commit -m "made a lot of changes"
fossil
for everything else. It's better, in my view. I used RCS back when, then SVN, then Mercurial, then Git, but about 2 years ago, I got tired of trying to figure out where the branches went wrong, how merge stuff, how to serve it up via web, etc. and switched to fossil. It works great. I run the server via inetd.I still use Acrobat Exchange on Windows 3.1 so I agree, what works, works.Obsolete or not, RAR is highly effective and very stable.
I understand that; I don't like it either. It's not really clumsy, but they turned things around: version control is all about order and discipline, and to our thinking this usually means some top-down layout. But they did the opposite, they made it a decentral structure with no implicit authority.git/github never interested me, as they seem clumsy and hard to use.
Then again, I'm not a native 'NIX guy either.
Thanks for this one, it is wonderful! I just walked it in my mind during my evening walk, and it gets on and on!concerns of future enshittification.
For those of you using version control for config files, how do you track only the files that you care about? Three options I'm aware of:
- Nothing special - add the files you care about.
git status
will just list a bunch of stuff in "untracked" files.- Ignore
*
and force add the files you care about.- Make a repo with only the files you care about outside of /etc, and copy them into place as needed.
git
repo method, but there are a lot of untracked files to wade through. I think this could be improved with a wrapper script for dotfiles, but I haven't written it yet, so I might be completely wrong. Here's the theory: wrapper status
, I actually want the wrapper script to first call git --git-dir=$gd --work-tree=$wt ls-tree --full-tree -r --name-only HEAD
to generate a list of dirs in the repo, then call git --git-dir=$gd --work-tree=$wt status -- $dirs
to restrict the status
command to only consider those dirs. This should prevent the flood of unrelated untracked files in the output. -d <dir>
option that uses the specified <dir>
instead of running ls-tree
. That way, running wrapper -d $HOME status
would reproduce the existing flood of untracked files that you see now using option #1, and running wrapper -d . status
would only show untracked files in the current dir to make it easier to focus on a few files at a time.I like the baregit
repo method, but there are a lot of untracked files to wade through. I think this could be improved with a wrapper script, but I haven't written it yet, so I might be completely wrong. Here's the theory:
git status -uno
(see git-status(1)).If you're only interested in files you are already tracking, usegit status -uno
(see git-status(1)).
-uno
could be used to generate that initial directory list like ls-tree
does, but it doesn't solve the basic problem, which is to exclude the flood of untracked files at the work-tree level, but show the untracked files and changed files at a level somewhere down below the work-tree level.Note you can also explicitly set files/paths/wildcards you are not interested in seeing via .gitignore file(s). (See gitignore(5).)
git is a very widely used tool, and widely used by programmers who tend to like to be configure a tool to be used just so. I would assume that most things you want to do with it are already implemented, and would suggest spending some time looking to see if that's the case before writing wrappers around it.
Aha. I didn't pick up on this subtlety.For this purpose, I'm interested in all files from dirs that contain files that are already being tracked (and any untracked files in their subdirs), which is not the same thing as hiding untracked files.