Code Repository Atlassian Buys Competitor BitBucket
Roblimo writes "Wow. Atlassian sent press releases out about this, and we're happy for them. But isn't Git easy to install and use — for free, even if your project is proprietary and secret, not open source and public? Whatever. Some people seem to feel better about proprietary software than about FOSS, and the majority of Atlassian's business comes from meeting the needs of behind-the-firewall, proprietary code repositories. At least Atlassian has free versions of its repository for FOSS and small-scale proprietary developers. Which is sort of nice."
"But isn't Git easy to install and use"
Yes, for certain users and environments.
In my experience, The folks who use Mercurial are more likely to be on Windows.
Mercurial tooling isn't as polished as the Subversion equivalents, but it's lightyears ahead of the Git tooling.
I'd be happy enough to pay for good Git tooling on Windows, but there doesn't appear to be a way to do so. Please correct me if I'm wrong.
I can't understand what the article summary is getting at. A reposting of a press release? An expression of /.'s parent company's interest in some organisation? Or a "tweet" accidentally posted as a /. article? A side effect of think-aloud sleep-typing?
Yes and no.
What he is describing is not how push is used/intended in a true distributed environment, however, in a corporate setting, you don't have a true distributed environment. You will have a centralized repository, which everyone will be pushing to (it's the one that's backed up).
As Git was intended for a pure distributed environment, push *is* lacking in a centralized environment. It's perfect for pushing things from your private repository to *your* public repository (the one one the web server). In a centralized environment, you lack the information that Florian complains about.
On further thought, I think the problem comes from the concept of each repository having *one* owner. Anything pulled into my repository, or pushed into my public repository, will have been pulled/pushed there by me. Who actually wrote the code is tracked by Git, but I'm the one who pulled it into my repository. A centralized repository doesn't fit into that concept.
However, there are hooks (shell scripts) that run every time someone pushes to the repository. These could be set up to log which commit ids were pushed by whom, but this will be outside of Git.
Nah, he's just been in industry for decades. Companies like this rise and fall every few years. Once you've been developing software for decades, you lose track of how many different source control systems, bug trackers, planning tools and "collaboration suites" you've had to use.
It has only gotten worse with so many of these apps becoming web-based. They're ALL shittier than real applications, and they all look like the same pile of shit, too.
That's it. I'm doing what others have done and blocking kdawson. This summary is crap and should never have been posted.
import system.cool.Sig;
Wow, is there a prize for worst summary ever?
"majority of Atlassian's business comes from ... proprietary code repositories
1. Atlassian doesn't have any products that are code repositories. It has one product that is a viewer for code repositories; Fisheye. It supports SSubversion, Perforce, CVS, CleareCase, Git and Mercurial.
2. I'm not privy to atlassian's financials, but I'm willing to bet that most of their money comes from Jira, with confluence a close second. Fisheye was an acquisition that they did a few years back when they bought Cenequa.
News for Nerds? More like Editorializing for Nerds.
Most projects (even non-corporate ones) have a shared, centralized repository to which more than person can push, so the push attribution problem arises.
One reason for centralized repositories is that you cannot have decentralized deployment. Your organization has only got one www.example.org server (cluster), so eventually, there is a very strong constraint which linearizes development. Certain build and testing infrastructure also strongly favors linearity.
After the merge, it is a fast-forward push, and the server cannot distinguish it from new, legitimate development. The problem is not that Git doesn't prevent the push (after all, you need to be able to get new commits into the repository). The problem is that out of the box, Git does not keep track of who pushes what. Out of band solutions exist, and those hosters typically provide that.