The Law of Leaky Abstractions (coined by Joel Spolsky) states: _"All non-trivial abstractions, to some degree, are leaky."_
Still, the directed acyclic graph of revisions + references in #git is IMVHO a better abstraction than dotted revision numbers (CVS), folder copying (Subversion), or applying and re-applying patches (Arch and its descendants) for #versioncontrol
#GitHub (for newbies) question:
How can you easily share code folders across repositories? For example you have a “Project 1” repo and a “Project 2” repo and you would like to share a “Stats” folder between them.
The obvious solution that comes to mind is just create a Stats repo and make sure that anyone using either your Project1 or Project2 code also clones your Stats code and adds it as a dependency somehow. But that’s not super convenient. Also it means you have to commit / push independently for all 3 repos and if you have a lot it starts to be annoying.
A family member in her first semester at the university shall learn how to use #github. She has no clue about repositories, but is asked to create a github page and edit the Readme. Why start with two different domains (github.com and github.io) and the github page concept? Why not first get a grip on what is #VersionControl / #SourceControl and how to work a bit with the #repos? Weird curriculum, IMHO. #SCM
“Things Every Hacker Once Knew” , Eric S Raymond (http://www.catb.org/~esr/faqs/things-every-hacker-once-knew/).
"How to Clean Up Your Local Repository with Git Commands - DEV Community" https://dev.to/this-is-learning/how-to-clean-up-your-local-repository-with-git-commands-531o #git #versioncontrol #dev
What am I doing? Why, voting to help decide @Codeberg policy as a member.
(Wait a minute, you can’t do that on GitHub? How odd… sounds a bit autocratic to me…) ;)
Seriously, though, check out https://codeberg.org – they’re doing everything right.
There are alternatives and if we want them to survive, we must support them.
"20 Git Commands That Will Make You a Version Control Pro. - DEV Community 👩💻👨💻" https://dev.to/devland/20-git-commands-that-will-make-you-a-version-control-pro-149p #git #versioncontrol #developer
Check out my latest blog post on mastering advanced #git commands and techniques!
In this post, I've covered a range of techniques that can significantly enhance your #productivity as a #developer. From efficient #committing and #branching to #merging, #searching, #cleaning, and much more - these tips will help you navigate your version control system like a pro.
Check out the full post here: https://www.javedali.net/post/23-advance-git-commands-shortcuts/
Having your own version control is very handy, privacy friendly and very easy to install in a FreeBSD/TrueNAS jail. This series of articles explains how anyone can run their own Gitea service.
@randy5235 Controlling one’s own code isn’t really the point of a package repository. It’s for software releases. The code and content (hopefully) lives in a separate #VersionControl system where changes are more granular than new version releases.
And as you note, there are efforts like #ForgeFed to enable federated software development with distributed VC, issue tracking, forking, pull requests, merging, etc.
I don’t know if it’s useful to commingle the two.
*teammate reports a bug*
Hmm, that doesn't happen on my machine. Have you pulled the latest version of main? Yes?
What's commit number are you on? Yes, that's the one I'm on.
Do either of us have any unstaged changes? No?
Other teammate, does this happen for you? No? Okay, it's just the one person.
Try restarting Unity.
Reboot your computer.
Okay, delete the entire repository, re-clone it, and open that in Unity.
THAT fixed it.
People working in research code development: how do you approach your branching strategy? Everyone commits on main, or you have a main/dev branch? Do you branch for features? Do you have scheduled code reviews?
I'm mostly interested in small teams, or even people who work alone. Do you still use branching when you are the only developer?
Beyond Git: The other version control systems developers use
Effective Git for Community Projects.
All members of the Ummah are welcome to attend
Btw., #Testing and #VersionControl are super powers, not as in "a gift only a few possess", but as in "super useful", in case you were wondering here: https://fosstodon.org/@underlap/110157663287543252
They really are the hygiene factors of #softwareDevelopment: if used, you don't notice much, if not your codebase starts to smell terrible very quickly.
I would definitely get on board with something like a #GitHub Audio Edition.
Just imagine, in addition to having your project files in #SourceControl, you could also have your #DAW, #plugins, #presets, #samples, #drivers, etc., all saved in the precise state required for every project you've ever worked on. Need to revisit a project from several upgrades ago? Just checkout the most recent commit from that project, and everything would be exactly as you left it.
This would also allow you to upgrade your #hardware independently from your #software, and/or restore everything to perfect working order on a new machine within minutes (instead of hours or days) in case of theft, damage, or catastrophic hardware failure.
IMO, the necessary tech to make this kind of thing possible isn't *quite* there yet, but probably will be soon. 🤞
Definitely a sad day, but perhaps it's a blessing in disguise. Maybe this will be the last straw, and #MusicProducers will finally start thinking/acting like #SoftwareDevelopers, embracing the #AgileMethodology, and using proper #VersionControl tools like #git and #GitHub for #backups / #VersionHistory and #collaboration with other #musicians.
We'll be talking about a little #ExternalTool I wrote for #PowerBIDesktop called #PbiToolsWatchPS, which launches a #PowerShell window running #pbitools in #WatchMode on the current #pbix file. The purpose of this little tool is to minimize the effort and number of steps necessary to #commit changes to Power BI #reports and #datasets into a proper #VersionControl system like #GitHub, #AzureDevOps, etc.
This must be easy to do if you are a professional software developer (which I'm not, I'm an "end user programmer" and educator), here goes the problem:
I have some code, let's call it "origin" (you can correct my names in the replies if you really have to), and I have a modified version of it, let's call it "my fork".
when "origin" gets updated I'd like to apply to "my fork" the modifications that don't affect my own previous modifications, and be shown the ones that conflict.
This is standard git merge conflict resolution, isn't it?
Is there a way of doing it outside the dreadful git context/interface?
👆 git is already awful for us end user programmers, but this is plain hell.