Oh, wow! So git and other DVCS haven't conquered all, and there is still a place where #SVN is used by a huge number of people: #WordPress plugin repository.
Oh, wow! So git and other DVCS haven't conquered all, and there is still a place where #SVN is used by a huge number of people: #WordPress plugin repository.
Hai sempre voluto imparare a usare Git (:gitea:) per gestire il tuo codice in modo efficiente?
💻 Grazie al corso Git 2026, offerto anche quest'anno come Passion in Action, questo è possibile!
@ItaLinuxSociety @milano @lambrate
#politecnicodimilano #git #svn #corso #course @tecnologia @linux
1/3
OK just trying here because it's full of helpful knowledgeable people 🥰 So a question about #svn #apache #svnserve .. suppose you have a SVN server on Windows started as a service which has all its repositories in a folder on D:\Repositories ( and it's started as svnserve --service -r D:\Repositories ) now you bought a NEW disk and you'd like to copy all the repositories let's say on E:\Repositories .. what's the CORRECT way of doing it ? It seems I find docs that say a bit of 'conflicting' CONT
@cryptgoat Lange Zeit hab ich tatsächlich mercurial git vorgezogen. Es ist git sehr ähnlich, aber simpler, und gerade für kleinere oder private Projekte daher einfacher und zugänglicher gewesen, als git es war. Aber mittlerweile nutz ich das garnicht mehr und bin komplett auf git umgestiegen.
Tatsächlich wäre übrigens bei der Jobsuche #SVN für mich ein Ablehnungsgrund eines Jobangebots. Das hab ich wähend meiner Schuld und Studiumzeit noch nutzen müssen, und auch immer wieder Profs und auch Kommilitionen gehabt, die sich damals gegen Git gewährt hatten (was dort neu aufkam). Das hat bei mir so viele Narben hinterlassen, damit will ich nie wieder arbeiten :D
I am tackeling my next project in moving away from #BigTech and #USTech companies. This one is one that is really hard for me, and that pains me a bit: I'm moving away from #GitHub - it's hard for me, because I've been brought up with #SVN and instantly fell in love with #DVCS, and with #git I instantly also started using GitHub. And I **really** used it like their slogan suggested: Like "facebook for programmers". I followed friends and colleagues, followed projects I loved and people that seemd interesting to me, and even had a couple of discussions that started with a commit or new repository on Github. Plus, I love their mascot and have a huge amount of stickers featuring #Octocat - to me GitHub was a crucial part of my programming hobby and upbringing.
However, since #Microsoft accquired it, my engagement got less, even though I stayed, because no other solution at that time was remotely what I wanted and loved about GitHub.
Since then, lots of things have happend; GitHub fired people that spoke out against the capitol attack, it does business with ICE, and is now monetizing the works of millions of open source developers with their integration of AI in GitHub that you never agreed to and cannot opt out of. And GitHub's parent company openly supports Trump, and meddles in international juristriction and politics by blocking political enemies of the Trump regime from their accounts (i.e. the E-Mail account of ICC Prosecutors).
I think I won't delete my old GitHub account; but active and new repositories will be moved to @Codeberg - I am not sure if it is the right home for me, or if I long-term will be hosting my own @gitea or @forgejo instance; but for a start I think it is the right thing to do, and as I am currently working on something I would like to put under versioning, now is the best time to do it. So if you want to follow along, here is my new repository host:
#BoycottBigTech #UnplugTrump #privacy #security #souverein #NoAI #AiMisuse #GiveUpGitHub #codeberg #forgejo
[Перевод] SVN vs Git для проектов на Unreal и Unity
Unreal и Unity быстро превращают репозиторий в смесь кода, тяжёлых ассетов и командных привычек — и выбор VCS начинает влиять на работу каждый день. В статье сравниваются SVN и Git именно в контексте UE/Unity: блокировки файлов, права доступа, скорость, ветки и совместимость с CI/CD. Также разберем практические замечания по миграции и тому, как выстроить процесс так, чтобы он был понятен и разработчикам, и людям, которые живут в ассетах.
https://habr.com/ru/companies/otus/articles/1000874/
#системы_контроля_версий #SVN #Git #Unreal_Engine #Unity #бинарные_ассеты #блокировка_файлов
The working copy at '<path>' is too old (format 10) to work with client version '1.14.5 (r1922182)' (expects format 31). You need to upgrade the working copy first.
Nelle ultime settimane, si è ricominciato a parlare di #StopKillingGames dopo l'avvenuta verifica delle firme e - non essendo più così tanto giovine - ho ricordato i "bei-cari-vecchi-tempi" con un amico pressoché coetaneo...
Tempi in cui - per i #LiveService a pagamento - proliferavano progetti #OpenSource (distribuiti tramite #SVN) di server privati che era possibile hostare sulla propria macchina, così da giocare con BEN 16 amici alla volta, usando servizi (allora gratuiti) come #Hamachi.
Alors oui, #git (et tout autre gestionnaire de versions) est un outil absolument extraordinaire et on aurait beaucoup de mal à faire notre travail de #dev sans ça !
Et j'en ai utilisé quelques uns : #CVS 😄 , #SVN, #Bazaar, #Mercurial
Maintenant... quand tu vois que, sur un projet #python, le dossier .git (qui contient l'historique des modifications) représente... 87% du poids total du machin... 😱
🌘 Judo for JJ:釋出功能詳盡的 GUI 工具,支援 Git 儲存庫
➤ 釋出 Roadmap:Judo for JJ 帶來 Git 儲存庫的完整 GUI 操作體驗
✤ https://judojj.com
Judo for JJ 是一款功能全面的圖形化使用者介面 (GUI) 工具,專為 JJ VCS 設計,同時也完美支援 Git 儲存庫。它提供了恢復儲存庫至任一時間點、撤銷與重做變更、查看合併的差異(diffs)或不同 commit 間的差異等功能。使用者可精確地應用或還原 diff、檔案、commit 甚至是多個 commit。此外,該工具允許透過自訂 revsets 來篩選 commit,並支援拖放式 rebase 操作,包括複製、分割、捨棄、還原、合併和壓縮等多種互動。
+ 這工具看起來很強大,特別是針對 VCS 的操作,解決了許多命令列操作的不便。期待它在 macOS 上的表現!
+ 能夠直觀地管理 rebase 和 diff 真是太棒了,這對我這種經常需要處理複雜分支的開發者來說,省時又省力。
#版本控制 #GUI 工具 #Git #SVN
version control of /etc with git and git-store-meta
This blog post describes how to use git together with git-store-meta to version control config files in unix/linux /etc directories
Intro and backstory
I have used version control on the config files in my unix/linux home directories, since the early 90-ies, and used version control on config files in the /etc directory tree of my linux boxes, since I first started setting up linux boxes in the mid-late ninties.
Initially I used RCS both for home directory version control.
But while dotfile version control in my home directories transitioned from RCS controlled files in home directories on various computers, to a shared CVS repository used in all home directories, which was later transformed from CVS to SVN, until it was finally converted from SVN to git in May 2011, I continued to use RCS versioning for files in /etc directories on various computers.
The reason for staying with RCS version control for files in /etc directories was git’s lack of metadata storage, in particular user and group membership and user and group access to files, as well as limiting public access to files.
To some extent this was handled by RCS (e.g. by giving the version control file the same owner and group membership as the target file), but it always required a bit of manual fiddeling when things broke.
This blog post explains how to version control /etc directories by combining git with git-store-meta to preserve user and group membership of the versioned files as well as access privileges to the files and even preserve the time of the last change to the files.
How to set up version control of /etc directories
The first thing to do is to install the prerequisites. On a debian (or ubuntu) system that could be done by doing the following commands as root:
apt updateapt install git perl
Clone the git-store-meta git repository (this can be done by any user. Doesn’t need root privileges):
cd /tmpgit clone https://github.com/danny0838/git-store-meta.git
Then create an empty git repository in the /etc directory. Do the following commands as root
cd /etcgit --init
Rename the default branch (typically master or main) to a branch name reflecting the hostname of the machine containing the /etc directory being versioned, e.g. if the host is named doohan, the branch should be named something like etc-doohan:
git branch -M master etc-doohan
Add an /etc/.gitignore file ignoring everything (which means that version control of new files has to be done by forcibly adding the files with “git add -f“):
cd /etcecho "*" >.gitignoregit add -f .gitignoregit commit -m "Ignore all unknown files found in /etc and subdirectories"
Copy git-store-meta into the git repository of /etc/.git and create an initial metadata file with the necessary fields for controlling and versioning ownership and access of files in /etc
cd /etccp /tmp/git-store-meta/git-store-meta.pl .git/hooks/.git/hooks/git-store-meta.pl --store -f user,group,mode,mtime,atimegit add -f .git_store_metagit commit -m "Add git-store-meta metadata file"
Set up the git-store-metadata hooks which will update .git_store_meta on commits and add .git_store_meta to the commit and will set metadata values on files when updating a branch:
cd /etc.git/hooks/git-store-meta.pl --install
Add a remote (make sure it is not a public repository) and push the branch:
git remote add origin git@git.example.com:~exampleuser/etc-configgit push -u origin HEAD
Using git version control of /etc for a new file
In the future, when doing changes to a new config file, do the following:
Add the current version of the file to git (the “-f” flag is necessary because of the .gitignore file excluding all files by default)
cd /etcgit add -f dnsmasq.confgit commit -m "Add version of dnsmasq.con distributed by debian 13 trixie"
Make local modifications to the configuration files and commit the changes and push the branch to the remote for safekeeping
cd /etcgit add dnsmasq.confgit commit -m "Adapt dnsmasq to home network"git push
(note that the “-f” flag isn’t necessary on “git add” here)
Preserving history from RCS files
When adding git versioning to /etc I preserved the history from existing the RCS version control files on the various computers, by
Creating a CVS repository based on RCS files from /etc
mkdir /tmp/etc-cvscd /etcfind . -name RCS | xargs tar cf - | (cd /tmp/etc-cvs; tar xf -)
installed cvs-fast-export on the computer where the conversion was run (must be done by root or sudo)
apt install cvs-fast-export
exported the cvs repo to a fast-import file and then imported that file into an empty git repository
cd /tmp/etc-cvs/find -type f | cvs-fast-export >/tmp/etc.dumpmkdir /tmp/etc-configgit initgit fast-import </tmp/etc.dumpgit branch -m master etc-doohangit config user.name "root doohan"
moved the new .git directory to /etc
cd /etcmv /tmp/etc-config/.git .
Closing words
I also added git-store-meta metadata versionining to git versioning of my various home directories, which removed the need to manually do “chmod go-rwx” on files that should be unaccessible to others after switching branches or merging branches.
When I first looked into using git for /etc version control, back in 2018, I had planned to use a tool named metastore to store the metadata of /etc directory.
However, metastore proved to be unsatisfactory for adding metadata support to git:
/etc directories and subdirectories, not just the files version controlled by git, which caused git updates and commits to become very slowIn contrast git-store-meta has can be used from its main HEAD, rather than a specific release, was easy to install, only tracked metadata for files in git in a human readable CSV file, and worked well (i.e. does what it is supposed to do without breaking anything in the process).
#git #gitstoremeta #metadata #config #configfiles #etcdir #rcs #cvs #svn
Big milestone achieved today! So big that I made a meme about it.
#DevLife #ProgrammingHumor #CodeMemes #SoftwareEngineering #VersionControl #GitHub #SVN #CVS #SourceControl #MemesForDevs #NerdHumor #DeveloperProblems #SmallWins #Progress #MilestoneUnlocked #DeveloperJourney
🚀 SVN (Subversion) là gì? – “Người anh cả” của Git mà ít ai nhắc đến! 🤔
Bạn có biết trước khi Git “lên ngôi”, SVN từng là cánh tay phải đắc lực của lập trình viên? 🧑💻
SVN giúp quản lý mã nguồn, theo dõi lịch sử thay đổi, làm việc nhóm siêu mượt! ✨
💬 Vậy SVN còn phù hợp trong thời đại Git thống trị không?
📌 Câu trả lời chi tiết ở đây nhé:
👉 https://interdata.vn/blog/subversion-svn-la-gi/
Bạn từng dùng SVN chưa? Bình luận chia sẻ trải nghiệm cùng InterData nha! 👇
Do you remember the time when @google thought that hosting #opensource projects as a service was a good idea?
Maybe looking at #GoogleCode for good old projects, managed through #svn , bring you good old memories.
Yes you can do it.... at @swheritage archive. Check https://archive.softwareheritage.org/browse/search/?q=googlecode.com&visit_type=svn&with_content=true&with_visit=true
It is like going back in time, I know. Looking ahead, by the way.... will @GitHub live forever?