Sublime Merge remembers the last dozen or so repos you opened. Instantly switch to another repo using Shift+ Ctrl+ O. (Sourcetree opens repos as tabs inside a single window, so you can’t do a side-by-side of two repos) Its possible to open multiple windows if that’s what you need. The full path to the repo is shown in the Window title. Labels are poorly written too, which makes it scary for learners) (Sourcetree hides most of the git internals, so you need to experiment. Tool tips on some buttons show what git commands will be executed when you press them (this helps you learn git). (The workflow in Sourcetree is vague and unintuitive) The work flow for resolving merge conflicts is very streamlined: (In Sourcetree there are many clicks and confusing options, and its so slow performing the clone) The rebase commands to abort or continue are hidden 2 deep in a menu.)Ĭloning a repo is wonderfully simple - you can do it in two clicks: (Sourcetree doesn’t have clear indicators that a rebase is in progress. You can refer to the last git command, and there are buttons to Abort rebase or Continue rebase. The GUI has clear indicators to show when you are currently rebasing. (The Interactive rebase interface in Sourcetree is vague and unintuitive) Simply select one or more commits, then use the context menu to squash, reorder, drop, amend commit message, etc. Interactive rebase commands are performed individually, and this works out to be very intuitive from a GUI. (Sourcetree can do this, but its unreliable and usually doesn’t give the correct result) The entire interface is consistent and elegant.Ĭtrl+ Click any two commits to see a diff of them. Please also head over to their website and read the feature highlights. Sublime Merge is a great tool and its features helped me learn git and made my workflow faster.īelow I’ve explained each awesome feature, followed by a comparison with SourceTree. After switching to Sublime Merge my knowledge of git exploded and it has been a great discovery process. I have used Sourcetree for over a year and during that time I was still learning git. Sometimes when you click on a branch it doesn’t jump to it in the graph view. Regularly prompts for authentication for each repo separately (very frustrating). Regularly complains about corrupt dictionaries and asks if I want to delete them. Regularly crashes and needs to be reinstalled (or requires a reboot), usually just after updating Microsoft Office. Note: my experience is with the Windows versions of Sublime Merge and Sourcetree. I hope my comments help to further improve both tools. The main point of this article is to point out the amazing features in Sublime Merge, and to illustrate why you should avoid using Sourcetree. Sublime Merge vs SourceTree (Git client comparison) Although I did create an app that allows you generate ObjectId compatible values (see it here Mongo ObjectId Generator).Īll the test and a quick explanation of what we’re doing and why we’re doing it, culminating in our glorious use of fineProperty, is on GitHub /HugoDF/mock-mongo-object-id. We don’t want actual ObjectIds strewn around our code. It’s useful to testing code that uses things like Mongo’s ObjectId. That’s great for setting functions as method mocks. The gist of fineProperty use with a function value boils down to:Ĭonst obj = console.log(obj.yes()) // false or true depending on the call :D As you can see, the yes property is not enumerated, but it does exist. non-enumerable properties that are functions. This post goes through how to use fineProperty to mock how constructors create methods, ie. #javascript JavaScript fineProperty for a function: create mock object instances in Jest or AVA Updates were rejected because the tip of your current branch is behind its remote counterpart. No rebase(s): merge the remote branch into local We’re now going to explore how to achieve a state in the local branch where the remote won’t reject the push. How can you get your local branch back to a state that’s pushable? These 2 cases should be dealt with differently. There tend to be 2 types of changes to the remote branch: someone added commits or someone modified the history of the branch (usually some sort of rebase). “the tip of your current branch is behind its remote counterpart” means that there have been changes on the remote branch that you don’t have locally. Remotes are useful to share your work or collaborate on a branch. a GitHub/GitLab/BitBucket/self-hosted Git server repository instance). A remote equates roughly to a place where you git repository is hosted (eg. A remote branch is one that exists on the remote location (most repositories usually have a remote called origin). A local branch is a branch that exists in your local version of the git repository. Git works with the concept of local and remote branches. What causes ”tip of your current branch is behind”?
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |