Yes, I also use it daily, so thanks for making an amazing tool!
100% vs 80% is of course going to be subjective, but the missing 20% in my opinion is built-in merging and a built-in repo browser. When I've tried to advocate GitUp to my coworkers, those are the two things that keep them going back to SourceTree or Fork.
(Also, on our (admittedly, pretty large) repos, it's not quite rock-solid; staging can be unusably slow (requiring fallback to the command line), switching to the commit view from the map view can be slow, and making lots of changes to the working tree will crash GitUp.)
Still, a brilliant piece of software, and I am suprised that (1) it didn't find a larger audience and (2) that it wasn't more influential on clients that came after, like Sublime Merge.
GitUp uses libgit2 under the hood. GitUpKit is an Obj-C wrapper I wrote at the time to make it much easier to use.
Unlimited undo / redo is achieved by taking a snapshot of the entire repo before and after any operation (e.g. checking out the repo or creating a branch etc...). The inspiration I had at the time was that is it is trivially cheap to take such snapshots: essentially all you need is a list of all the refs.
Then when you need to undo, you have 3 things:
1 - current state of all the refs in the repo
2 - state of all the refs from the before snapshot
3 - state of all the refs from the after snapshot
Compute the delta between 3 -> 2 and apply on top of 1.
The same technique allows to do the Time Machine feature.
> The French have been outdone in so many areas, they're now engaged in a new form of a trade war, which is simply to grab surpluses of foreign companies as they can. And who, even among intelligent, literate people who are responsible enough to grasp material facts is going to care one bit?
When the US fines foreign banks, VW group and others for incredibly higher amounts of money, it's fair-game but when France fines a US company after an 8 years investigation, it's not, and the authorities don't even get the benefit of doubt that maybe they know what they are doing and have a solid case? You don't have any basis to make such a statement that this is only about some revenge.
France was one of the top markets for Apple and had 20 years ago a vibrant network of small retailers dedicated to Apple hardware (without comparison with the distribution situation in the USA). That went downhill once Apple started its online store and then its physical stores. Maybe it's just survival of the fittest, or maybe Apple also tipped the balance in a way that's not ethical or maybe even not legal. That's why we have such government bodies as "Autorité de la Concurrence".
> it seems that Apple was engaged in some otherwise normal business practices.
The "Autorité de la Concurrence" probably has the best grasp compared to anyone on HN regarding what is "normal business practices" and what the law allows in France, which is not the USA.
From TC article, the accusations are rather quite specific:
=======================
The competition commissioner noted that Apple and its partners violated three specific areas:
— Apple and the two wholesalers agreed not to compete with each other and also to prevent other distributors to compete on price, “thereby sterilizing the wholesale market for Apple products.”
— Secondly, premium distributors were forced to keep prices high to keep them at the same level as those of integrated distributors.
— Third, Apple has “abused the economic dependence” of these premium distributors, by subjecting them to unfair and unfavorable commercial conditions compared to its network of integrated distributors. (These last two points relate specifically to the accusations eBizcuss had lodged against the company.)
=======================
It was a known fact at the time (10 years back or so) that independent Apple retailers were not getting stock from Apple for certain products and therefore couldn't meet demand from their customers. There were even some "hot" products that could only be bought from apple.com or its own physical stores. I don't know if some of these practices were illegal or not (that's why we have government bodies to act as arbiters and enforcers of the rules), but it certainly didn't help the retailers.
>>>> "When the US fines foreign banks, VW group and others for incredibly higher amounts of money, it's fair-game"
Who said this is 'fair game'?
>>>>> "France was one of the top markets for Apple and had 20 years ago a vibrant network "
A) '20 years ago' Apple was a completely different company, they were 1/20th the size. They are a completely different company, in every way.
B) 'France was one of the top markets'? Apple sales in France have dramatically increased during this time - so I don't understand this point.
C) Apple can distribute generally how they please as long as they're not breaking the law.
>>>> "The "Autorité de la Concurrence" probably has the best grasp compared to anyone on HN regarding what is "normal business practices"
So your argument is 'trust the authority of the French government because their logic is infallible' - while in the very same comment expressing that the US is engaged in 'arbitrary fining of foreign banks'?
No, we should not trust them at all, we should demand transparency.
>>>> As far as the specific points of law:
1) "Agreeing not to compete with one another". Really? Or is it that Apple required them to sell at specific prices - which is a very common practice.
If you are Apple, why would you engage in price collusion, which is illegal everywhere, when you can dictate end prices? You can 'force' the wholesalers 'not to compete' - this happens in every industry, all the time, and it's not illegal.
2) "premium distributors were forced to keep prices high"
This is not generally illegal and it's common practice!
3) "Apple has “abused the economic dependence” " - this is merely a claim, there's no substance behind it.
>>>>>>>>>>> "It was a known fact at the time that independent Apple retailers were not getting stock from Apple for certain products"
Having an amazingly hot product that is selling out everywhere is not illegal, and favoring some channels over others is not either.
But all of this is missing the point:
- Governments, US or French, applying regulatory law is important, obviously, it's important that actions are applied broadly, judiciously and with merit.
Swiss banks have been hiding tax cheaters, so it's pretty reasonable that the US would go after them. As far as other Trump-era fines, well it depends, obviously, he's engaged in some nasty stuff, but it doesn't justify the other way around.
- France is using their political and legal apparatuses as a means to grab revenue. Their economy is weak, they see this 'big American firns' making tons of cash, and they want some money. This is partly the motivation and its sad.
- There's a number of laws they could change that would more fairly derive revenue derived from Apple, FB, Google, for example, local taxes on ads, and of course, fixing the massive EU tax loopholes. This would be more consistent with 'good governance'.
- All of this is the loser's strategy. What they need is their own champions, which should be the primary focus. This will entail a whole set of reforms, and the willing effort and participation of the public at large as well.
Believe or not, there are a number of cases where you can work faster in a GUI than the CLI: many operations on the topology of the repo for instance. See somes examples at http://gitup.co/.
But yes, I wasn't really worth actively maintaining it as it was feature complete and I didn't intend to build a business out of it.