• icy a day ago

    https://tangled.sh is an atproto (same tech as Bluesky) git collaboration platform. https://blog.tangled.sh/intro

    We have a more advanced PR flow (stacking, round-based reviews), jujutsu support and we just launched our new CI system. Come join! https://tangled.sh/signup. The goal is to be the new town square for collaborating with friends and open source communities.

    It's built fully in the open (https://tangled.sh/@tangled.sh/core) and we have a neat little community built around it on our Discord https://chat.tangled.sh.

    Last night was a ton of fun with the sudden influx of users thanks to the GitHub news. :)

    • danielspace23 a day ago

      Just an fyi for everyone: while Tangled is built partly on top of ATProto, it differs from its component architecture widely, as the tasks that should be done by the AppView are offloaded to "knots", self-hostable servers specific to Tangled that do most of the Git heavy lifting. It violates the "user data stays on the PDS" principle, as repo data stay on knots, not in PDSes. As far as I know, no other ATProto application has a similiar architecture.

      • yjftsjthsd-h 21 hours ago

        > It violates the "user data stays on the PDS" principle, as repo data stay on knots, not in PDSes.

        I'm not familiar with ATProto; what does this mean in practice? Does it just change the failure modes if something breaks?

      • abound a day ago

        You piqued my interest with the mention of jujutsu support. I just read the post on using it for code review [1] for stacked PRs and was really impressed, awesome work!

        I've never used Gerrit directly, but I'm guessing that Jujutsu's change IDs are like a native version of what Gerrit does there.

        I regularly (attempt to) do stacked diffs on GitHub with jj, and even with a bunch of automations it's still a clunky, awkward experience.

        [1] https://blog.tangled.sh/stacking

        • icy a day ago

          Glad you liked it! Yes, jj's change IDs are very similar to Gerrit's, but instead of a commit trailer it's now a header in the commit object itself. For example:

              $ git cat-file commit caa00e20
          
          
              tree e8418bf7e7c626fdf5b1570e6efcddf1e1b0c923
              parent 1e3a841997f81c9b0ed21dc5a91e783fcf2f4ec7
              author Anirudh Oppiliappan <anirudh@tangled.sh> 1754996643 +0300
              committer Anirudh Oppiliappan <anirudh@tangled.sh> 1754996799 +0300
              change-id skwlyzyomnwqntksmoqkrllqlpsskztt
          
              xrpc/{errors,serviceauth}: split shared xrpc code to top-level package
          
              Signed-off-by: Anirudh Oppiliappan <anirudh@tangled.sh>
        • microflash a day ago

          Looks very interesting. Just signed up.

          A few things that would make me actually use it: - namespaces (aka, organizations in GitHub terminology) - private repos (I usually start with private repos and then make them public)

          The interface is really friendly and I like how approachable it is. You should make dedicated docs site instead of throwing folks at a bunch of markdowns. Maybe create a “Pages” equivalent and demo it by building a docs site?

          • icy a day ago

            Yeah, for now orgs/namespaces are their own accounts (even better if you have a dedicated domain for your org). Private repos aren't a thing just yet since we use AT Protocol, and all data on protocol is public -- for now. This will change soon.

            Appreciate the feedback! A dedicated docs site is in the works (along side a pages offering!).

          • aranw a day ago

            I'm really liking tangled.sh but I don't think it supports private repos seen as it's built on top of atproto

            • mozzius a day ago

              this is the only one really gunning for the “hub” part of github, very exciting stuff

              • yjftsjthsd-h a day ago

                > jujutsu support

                What does that mean? Doesn't jj just use git as its backend?

              • icapybara a day ago

                I like the design of your site. Loads very fast, looks clean.

                • icy a day ago

                  Thanks! Excellent site-wide performance is something we aim for -- hence our stack of Go + htmx!

                  • cryo a day ago

                    Do I miss something? The site only shows a stream but nothing to describe or show the project.

                    • icy a day ago

                      That's the global timeline. If you'd like to look at a demo repositoy https://tangled.sh/@tangled.sh/core is a good one (monorepo for Tangled).

                      • cryo a day ago

                        Ah I see, thanks. I only clicked on the first link assuming this was the project page.

                • moksha256 a day ago

                  To me the biggest not-easily-replaceable value is the "Hub" part of GitHub. It's easy enough to stand up your own Gitea or Forgejo instance for mirroring personal Git repos, set up your own GitLab instance for more sophisticated collaboration and CI workflows, etc...but the discoverability GitHub provides in its current form, since the vast majority of repos are hosted there (or at least have some kind of mirror there) is unparalleled.

                  • dv_dt 7 hours ago

                    The defacto hub to search for projects and host projects has shifted before - it may be hard to believe now but at one time sourceforge was in github's position. Now that was a much earlier time in web collaborative repos but it could shift again.

                    Similar for indexes of open source repos - I dont know of a singlar winner now but it was for a bit freshmeat for a feed of open source project updates

                    • Fluorescence a day ago

                      For what specifically?

                      My top-of-funnel is not searching github but recommendations or searching technology/platform specific repositories e.g. for software it's flathub/f-droid and for rust its crates.io/libs.rs.

                      Where the code is hosted is in theory irrelevant... but I'm ashamed to say that when code turns out to be on gitlab my heart sinks. It's a bit of a red flag for e.g. no bug-tracking, no contributions, no maintenance, absent maintainer and unexpected licenses.

                      It's gross personal hypocrisy because I hate the absurdity of commercially owned FOSS collaboration and centralised git and happily self-host myself... but those not publishing code on github are awkward bastards :)

                      • riidom a day ago

                        I'd like to see a federation of git-hosting instances, fediverse-style.

                        • nerdypepper a day ago

                          there's https://forgefed.org/ defined by the creators of forgejo. there is no complete implementation of the spec. from the last forgejo changelog, the "star" action has been completely federated. federated PRs and issues are a long way away.

                          https://tangled.sh is the other contender in this space that I know of. uses atproto (same as bluesky) under the hood.

                          fundamentally activitypub is insufficient to define these kind of networks. you'd need to have some sort of object-capability representation. the creators of forgefed are also moving in this direction: https://codeberg.org/Playwright/playwright

                        • mhitza a day ago

                          It's not only discoverability, but also the need for accounts.

                          At some point I made very tiny contributions to OSS projects that had their own Gitlab hosted instances.

                          Sure a password manager makes it tolerable, but what about having an anonymous way of opening up PRs (subject to owner moderation of course)?

                          Use the author name and email for a virtual identity and when the PR request is accepted (not merged) force an email address validation for the PRer so that comment interaction can happen via email.

                          • xigoi a day ago

                            This is an entirely self-inflicted problem. Git was designed so you can just send someone a patch by e-mail. It was GitHub that introduced “pull requests”, which require an account, as the main method of collaboration. Vendor lock-in as a feature.

                            • freeopinion a day ago

                              Or...

                              Fork the original repo onto your forge. Your forge could be your own forgejo instance, your own GitLab instance, just a plain git repo, or even Github if you like it so much.

                              Then send a note to the original authors informing them of your fork and the patch you wrote. Request that they review your work and pull it into their repo if they approve of it.

                              You don't need an account on their forge and they don't need an account on your forge.

                              • mhitza a day ago

                                For me that adds to many steps, and removes collaboration transparency.

                                Disregarding the fact that I would need to have a way to reliably find the contact information, the review process would probably take place outside the source code platform.

                                • freeopinion a day ago

                                  Too many steps? How is it more steps than submitting an MR or PR today? You have to fork, code a patch, submit a pull request. The difference is just that it happens across forge instances.

                                  You have a point about the review process. How much of a moat do you want around your project? You want to keep spammers out. But that creates hurdles.

                                  I was trying to interact with the Trunk project the other day. But they required me to create accounts on multiple services just to get in the game. When you need a Github account and a Discord account and... You know what? Nevermind. It's too much effort just to be nice and inform you of an issue with your project.

                                  I totally understand that putting a public email address out there creates a huge burden for them. I suppose if I value a product enough I will accept some smaller burden and take the load off them. But most of the time I don't value a product enough to allow the authors to offload their burden onto me. Conversely, they don't value my input enough to accept the huge burden it would take them to allow me to interact with them.

                                  • freeopinion a day ago

                                    What if you could submit a PR by pasting the url of a repo commit?

                                    The forge could automatically figure out if the submitted repo was a fork, figure out the sequence of commits in the foreign repo that diverged from itself, analyze the commit comments and commit diffs to see if they jived, and add the PR if it passed the spam filter.

                                    Then you could submit PRs without an account or even having the contact information of a maintainer.

                            • woodrowbarlow a day ago

                              it depends on which network effects you want to benefit from. if you want your project to have visibility or attract contributors, then yeah. (although, mirroring your project to github can still accomplish a lot of that.) but if you want to benefit from forge tooling, like the ecosystem of github actions, then there are pretty good efforts to match API compatibility -- e.g., the gitea action runner can work with most github actions.

                              • dboreham a day ago

                                Host your projects in Gitea then configure mirroring to GitHub for discoverability.

                                • freeopinion a day ago

                                  Or submit your Gitea repo list to three or four search engines.

                                • echelon a day ago

                                  It's 100% the network, not the tech.

                                  You can have 1:1 parity with any company or product, but unless you have their word of mouth distribution and adoption, you will lose. Every time.

                                  People in aggregate, as crowds, are relatively static and inflexible. Once they learn a fact once, it sticks. You cannot unteach that without lifting metaphorical mountains. The first mover with escape velocity wins.

                                  The amount of energy needed to undo that is massive.

                                  You'll have fringe 0.01%ers adopt some other tool, but they'll never carry enough gravitas to bring the entire network with them.

                                  Anecdotal evidence:

                                  - Github, Facebook, and Reddit have never been unseated

                                  - Instagram has never been replaced, only supplemented

                                  - Twitter/X has only lost steam due to extremely bad press, an unwanted name change, and a huge effort from Meta (which leveraged traffic and synergy from Instagram). And even then, it's still well within the public zeitgeist. Bluesky and Mastodon didn't even make dents.

                                  - Google has never been displaced (granted, Google pays a lot of money to maintain defaults and maintain a web "pane of glass" monopoly, redefine the address bar as a search bar, etc.)

                                  • freeopinion a day ago

                                    Why should Github, Facebook, Reddit, or anybody else be unseated.

                                    Just because I use Codeberg doesn't mean Github should die. Just because I never ever visit Facebook doesn't mean you should stop using it.

                                    Why can't we all just play nice?

                                    • echelon a day ago

                                      > Why

                                      This is why VCs won't fund consumer. It's frothy, fickle, and the incumbents have saturated the network effects market. And that totally sucks.

                                      I'm a believer in strong antitrust and that a fire every decade or so clears the forest of dead growth and renews the ecosystem. Evolution and reinvention staves off ossification. Instead of working on hyper-optimization of things like better ad targeting in search of more growth, we're working on more important problems and lifting bigger weights.

                                      More startups means better compensation for ICs and innovators. Rewards for capital risk rather than extremely large wealth funds and pension plans.

                                      Look at your Fords and Boeings. Totally stagnant. Newer international competition is refreshing and energized.

                                      Or Google of just two years ago, before they had their "come to Jesus" moment. Where they witnessed visions of the loss of their single largest cash flow flashing before their eyes.

                                    • grim_io a day ago

                                      All your examples have replaced some other service in the past.

                                      Except GitHub, maybe.

                                      Granted, the replaced services were nowhere near the popularity levels of the current ones, and have made horrible decision.

                                      • echelon a day ago

                                        > All your examples have replaced some other service in the past.

                                        This was pre-broadband penetration, pre-smartphone. That was a really different era.

                                        Social networking wasn't really that big before Facebook. Friendster, MySpace, and Xanga were all niche communities.

                                        > Except GitHub, maybe.

                                        Github toppled SourceForge, which was awful.

                                        Reddit is probably the player that unseated the closest peer competitor. It toppled Digg, which was pretty big at the time. (Digg had itself disrupted Slashdot, StumbleUpon, and Del.icio.us, but those were niche communities.)

                                  • Catbert59 a day ago

                                    Private stuff: gitea on a cheap VPS. Will most likly migrate for Forgejo in the future. That stuff runs on a toaster.

                                    Public projects: Github. Having no problem with it. Also makes me happy poisoning LLMs with my shitty code.

                                    • lokimedes a day ago

                                      I run Gitea on my old Synology NAS, fast as a devil, especially when compared to Gitlab.

                                    • abound a day ago

                                      My general rule of thumb:

                                      - GitHub for things I expect broad collaboration on

                                      - SourceHut for things I just want to share (or expect contributions from a specific group that are comfortable with email git flows)

                                      - Self-hosted for everything else. This used to be Gitea, but I've recently switched to charmbracelet/soft-serve, which fits my needs well (it's small and comparatively simple)

                                      As other folks have noted, the social features of GitHub are hard to replicate elsewhere, but I've enjoyed SourceHut's stripped back approach.

                                      • srhtftw a day ago

                                        I use SourceHut¹ to serve git for a few private projects.

                                        I wanted to use their pages service as well to serve an SPA but their https://srht.site/limitations prevent SPAs from contacting external services I need. I get why they do that but I need my SPA to let users login to their databases and there's simply no way to do that while adhering to SourceHut's policy.

                                        Fortunately pico.sh², codeberg³ and GitLab⁴ (not GitHub) don't have that restriction. I experimented with each of them last year. All of them worked reasonably well. Eventually I settled on GitLab which had the nicest CI/CD of the three at the time.

                                        ¹- https://sr.ht

                                        ²- https://pico.sh

                                        ³- https://codeberg.org

                                        ⁴- https://gitlab.com

                                        • synack a day ago

                                          A directory called “git” with a bunch of bare repos accessed over ssh. You don’t need to make this complicated.

                                          • matths a day ago

                                            but then you don't have the pull request feature, do you?

                                            • synack a day ago

                                              You push a branch and send an email.

                                            • Aurornis a day ago

                                              The anti-UI people want to use e-mail and command line tools.

                                              It’s not a direct equivalent to pull requests because it lacks all of the easy history, inline commenting, comment status tracking, and ease of use, among other things.

                                              • dboreham a day ago

                                                Software was developed before the pull request. Typically proposed diffs were emailed around. Presumably this is what the pull request is trying to emulate.

                                            • ozornin a day ago
                                              • yakattak a day ago

                                                Do you use their actions at all?

                                                • whalesalad a day ago

                                                  can someone with lore knowledge share the deal between gitea, forgejo and codeberg

                                                  • kbolino a day ago

                                                    It actually starts with Gogs.

                                                    Gogs is FOSS but basically BDFL. What does and does not make it into Gogs (it's still around) is ultimately decided by one person, and he's fairly conservative. Gogs is very fast but lacks a lot of features that would allow it to go head-to-head with GitHub or Gitlab.

                                                    So, Gitea was forked from Gogs to allow it to take a different direction, with a larger group of maintainers and more input from the user community.

                                                    There were two major attempts to have hosted Gitea. The first was Codeberg, a nonprofit based in the EU. The second is a business that took the name Gitea, is based in the US, and changed Gitea (the software) to the "open core, closed premium" model.

                                                    This change led to the creation of the Forgejo fork, which Codeberg adopted.

                                                    • woodrowbarlow a day ago

                                                      gitea is the OG. forgejo is a fork, focused on lower resource needs (i think?). codeberg uses forgejo and adds static-site generation (like github pages) and CI/CD (via woodpecker).

                                                      • bananapub a day ago

                                                        gogs existed, gitea forked from it, gitea made some corporate structure change some people didn't like, they forked forgejo, codeberg is a hosted instance of forgejo.

                                                    • 0xbadcafebee a day ago

                                                      I don't know why nobody has yet said "GitLab", but it's easily the most feature-rich GitHub alternative (and self-hostable if you need that, but if you don't, why not let them pay the hosting bill for you).

                                                      • xigoi a day ago

                                                        GitLab somehow manages to be even slower and more bloated than GitHub.

                                                      • benterix a day ago

                                                        Good old Gitlab. There is just one con: its requirements. All the rest basically guarantees that whatever feature you might need, it will be there.

                                                        • keb_ a day ago

                                                          +1 to Codeberg, seems like it is the best combination of familiarity and longevity. Forgejo Actions still seems incomplete, but its Woodpecker CI seems a little more mature from what I can tell. Definitely not as fleshed out as Github Actions -- a good alternative would be to mirror your repos that require Github Actions to Github, but otherwise keep repos on Codeberg.

                                                          • grayhatter a day ago

                                                            I'm using srctree https://srctree.gr.ht/repo/srctree

                                                            Hopefully you'll forgive me for shilling my own project. It's a source code sharing site with a few primary goals. First, don't break the back button. I started the project right around the time github broke too many critical features in short succession. The back button, the URL bar, and ctrl+f in the code view. I also want it to be easy to use as a federated collaboration tool. Ideally you'd start your own instance locally, get a familiar GitHub like interface for submitting patches anywhere, even by email. Or if you're hosting a project, you could have an always up instance that others could connect to.

                                                            The part I've been thinking about deeply the past few days is how to improve the discoverability of peer repos and forks. I want to create something github like in terms of collaboration, but also try to incorporate some of the best lessons from mailing list based repos where it's easy to grab and try patchsets (exposed as branches) from a 'fork' without losing the value of a cannon 'upstream' and without insisting that any specific upstream is where every single commit belongs.

                                                            The whole thing is written in zig without any dependencies other than git for some of the repo management features I haven't ported yet. (and for generating git blames) If you do use it, or notice any issues, or think it's missing features do let me know. I'm currently trying to decide which is the next most important thing to hack on :)

                                                            see also https://github.com/GrayHatter/srctree if you want to subscribe to updates (still a feature srctree lacks lol)

                                                            • nik736 a day ago

                                                              Self hosted Gitea with Gitea Actions. Works like a charm for me and a team of 5.

                                                              • smjburton a day ago

                                                                Self-hosted Forgejo with Forgejo Actions for CI/CD. Forgejo Actions uses a syntax similar to GitHub Actions, so it's easy to transition. For my projects, I haven't had any issues. I'd suggest setting up an instance and testing it out to see if works with your projects/workflow as a replacement for GitHub/GitHub Actions.

                                                                • osmsucks a day ago

                                                                  For personal projects, I'm hosting them on <https://git.disroot.org/>. It's backed by Forgejo, and for my simple needs it's plenty.

                                                                  • stefanka a day ago

                                                                    Does this work for private/closed source project? Where are the servers located and how is it financed?

                                                                    • osmsucks a day ago

                                                                      Yes, practically all of my projects are private and visible only to me. Servers IIRC are located in the Netherlands. It's free to use with limitations, and financed by donations from supporters.

                                                                      More:

                                                                        - Annual financial reports: https://disroot.org/annual_reports
                                                                        - Someone's review: https://proprivacy.com/email/review/disroot
                                                                      • stefanka a day ago

                                                                        This should be listed on European-alternatives.eu. I was just looking for something similar with little success. Thanks for sharing.

                                                                  • yodon a day ago

                                                                    To the people who say "GitHub for public projects, gitea (or whatever) for private projects," can I ask why?

                                                                    If you're using GitHub for your public projects, why not just use GitHub period? Genuine question here.

                                                                    • 000ooo000 a day ago

                                                                      To speculate, a lot of devs seem to have a 'not GitHub? Ew..' attitude. Having used the top 4 forges professionally (BB, GL, GH, AZD) I am the opposite, so I run Forgejo at home. I don't have public projects though.

                                                                    • AlphaGeekZulu a day ago

                                                                      Self-hosted GitLab for proprietary customer projects that I don’t want in the cloud. I don’t trust GitHub’s privacy promises — if only because of the risk of my own misconfiguration. The GitLab server runs on Ubuntu Server on a NUC and is accessed via Tailscale by our very small team. No need to make it visible to the outside world.

                                                                      Slow, simple, inexpensive, safe, and good enough.

                                                                      • citrusx 19 hours ago

                                                                        I'm finding that Bitbucket works well enough for my needs. It's CI is kind of an acquired taste, but once you hammer it into shape, it'll do what you need.

                                                                        • digdugdirk a day ago

                                                                          Is Fossil able to step into the limelight yet?

                                                                          I've always been fascinated by it, but it seems to be completely out of the limelight.

                                                                        • cryo a day ago

                                                                          For personal projects: GIT barebone repositories + Wireguard to access them from all my devices.

                                                                          OSS work is mirrored to Codeberg and SourceHut. For actions I try to make sure that local builds, and cross compilation to Windows, macOS, armhf and arm64, is always working to not soley depend on Github Actions.

                                                                          • hahn-kev a day ago

                                                                            Wireguard?

                                                                            • cryo a day ago

                                                                              Yes I meant Wireguard, haha spend too much time working with Wireshark lately.

                                                                          • Sunspark a day ago

                                                                            Just like bots trawl the web to train AIs with, why would using different code sites be any different? If it's visible, they will still show up and scarf down the code for training material..

                                                                            So, given that this will happen everywhere, does it really make a difference what MS does?

                                                                            • geor9e a day ago

                                                                              All of my code is in a synology drive folder (think Dropbox, but hosted on a NAS) with continuous backup and local git in the folders. I'm the only person who works on it, so it's been fine.

                                                                              • sprybear a day ago

                                                                                Was on GitLab, then I lost my 2FA and recovery codes. Pro move.

                                                                                Still browsing. https://radicle.xyz looking rad, though.

                                                                                • freeopinion a day ago

                                                                                  radicle delegates are interesting.

                                                                                • doubled112 a day ago

                                                                                  I don't have any public repos, but for private repos, I started with Gogs on a server at home, migrated to Gitea, and finally migrated to Forgejo.

                                                                                  • sevenseacat a day ago

                                                                                    I've wanted to build a decent one since before GitHub even existed. Maybe today's news will be the impetus I finally need to start it.

                                                                                    • zabzonk a day ago

                                                                                      I loved Mercurial (still do), and despite all the bad news, Google Code. And despite even more bad-mouthing, BitBucket.

                                                                                      • nerdypepper a day ago

                                                                                        the only thing I really miss from GitHub is the social bits. it's super easy to stand up cgit etc. but you miss out on actual collab features, discover etc.

                                                                                        I've moved the bulk of my repos from GitHub to cgit first, but now to https://tangled.sh.

                                                                                        • rickydroll a day ago

                                                                                          gitea and jj. We are using Gitea because of contractual requirements by different clients. I think that cloud-based Git services are fine for projects where you are unwilling or unable to invest in necessary security measures.

                                                                                          • ac130kz a day ago

                                                                                            Gitlab is an easy way to scale things related to code. There's also this new thing Radicle.

                                                                                            • bradley13 a day ago

                                                                                              Personally, GitLab. Really, though, use anything that is not part of the Microsoft behemoth.

                                                                                              • GavCo a day ago

                                                                                                definitely the best alternative in terms of DX

                                                                                              • koakuma-chan a day ago

                                                                                                At work we use Azure DevOps ;-;

                                                                                                • stackskipton a day ago

                                                                                                  I use Azure DevOps for personal stuff since it provides private repos and free pipelines. It works well enough if you are do not need publicly show off work.

                                                                                                  • koakuma-chan a day ago

                                                                                                    I crave for PR stacking

                                                                                                • busterarm a day ago

                                                                                                  Sourcehut.

                                                                                                  • aspbee555 a day ago

                                                                                                    I have been using local hosted gitea for years for all private projects

                                                                                                    • JohnKemeny a day ago

                                                                                                      See also:

                                                                                                      Where should I host software for individual papers in 2025 now that GitHub is part of Microsoft AI? @ academia.sx

                                                                                                      https://academia.stackexchange.com/questions/220795/where-sh...

                                                                                                      • znpy a day ago

                                                                                                        I love gitlab.

                                                                                                        • jmclnx a day ago

                                                                                                          I work on my local Linux system and that is the most update to date

                                                                                                          Committed items are stored in 2 places:

                                                                                                          1. anon ftp on sdf, back to using tar files via gopher, the main site

                                                                                                          2. gitlab is a mirror and will make it easier for youngsters. FWIW, I find gitlab easier than github.

                                                                                                          If gitlab starts going the way github did, I will delete my items on gitlab like I did on github a long time ago.

                                                                                                          • acqbu a day ago

                                                                                                            Codeberg

                                                                                                            • sam_lowry_ a day ago

                                                                                                              git. No, really.