What Commands are Supported in the GUI?

Nov 17, 2012 at 1:39 PM

Hi,

Does the GIT Source Control Provider add-in offer any GIT commands in the GUI other than "refresh"?

I've got the feeling that the only thing this provider is good for is a shortcut to the command-line tool and showing icons in Solution Explorer (and a weird history view that looks like it was built for a different OS).

The reason why I installed it in the first place was because I assumed that it would provide GUI commands and windows that made working with GIT easy, so that as a new GIT user I wouldn't have to spend any time at all learning the ridiculous command-line options; e.g., see this discussion.

Does anybody know of any alternative Visual Studio Source Control Providers for GIT that offer GUI features instead of forcing me to spend more time on the command line than in the IDE itself?  :P

Thanks,
Dave

Nov 18, 2012 at 7:54 AM
Edited Nov 18, 2012 at 10:17 AM

Would be helpful if you tell us what VS and GIT related stuff you have installed.

In my VS I have a whole bunch of commands. Doing right-click on project -> GIT -> and there you go.

And yeah... you have to learn how to use GIT anyway.

Maybe you should start reading the documentation and some tutorials regarding GIT. Seeing your other post here I assume you didn't read a single documentation :P

Btw. git-bash has autocompletion, which is very helpful remembering the "ridiculous" command-line options.

I can't remember a single VCS GUI, which made reading/learning unnecessary.

Nov 18, 2012 at 3:01 PM
Edited Nov 18, 2012 at 3:03 PM

Hi,

Thanks for your reply.

> Would be helpful if you tell us what VS and GIT related stuff you have installed.

I only have GIT for Windows (command-line tool) and this VS plug-in.  You mean that's not enough?  I need to install more stuff?

> And yeah... you have to learn how to use GIT anyway.

Obviously, but my point is that I assumed I could learn it through menu items in the VS IDE, not through command-line options.  That's why I installed this plug-in.

You still haven't answered my question though: what is the point of a VS source control provider plugin that only gives you a link to a command-line window?  Where are all of the useful menu items?  Do I need to install that "official" VS plug-in for GIT that I've seen before?  If yes, then that just begs the question, what is the point of this provider?

> Maybe you should start reading the documentation and some tutorials regarding GIT. Seeing your other post here I assume
> you didn't read a single documentation :P

Wrong, I actually did read the documentation.  As I stated previously, I didn't understand it because it's a bunch of new command-line options with strange keywords and it requires a strange (to me anyway) sequence of commands to get very simple things done.  Three commands to "Get Latest" is just not simple enough, IMO.

> Btw. git-bash has autocompletion, which is very helpful remembering the "ridiculous" command-line options.

Obviously that's great for quickly entering commands, but I don't really know which ones to use in the first place.  The command terms and the complexity of the command sequences that are required to do simple things is confusing to me so far, hence my description as "ridiculous".  It's 2012 not 1985 -- how about some graphics, behavioral transparency and automation?  (Please excuse the rant)

Thanks for the tip though :)

> I can't remember a single VCS GUI, which made reading/learning unnecessary

The premise of my question wasn't that I don't want to read/learn.  Again, I did read and learn, and the result is that I still don't want to use the command line at all, which was my position to begin with.

As an example, I'm used to using Team Foundation Server in VS to work on my open source projects.  I've never had to use the command line at all (at least not to do simple things like "Get Latest").  I was able to learn TFS easily through GUI commands; e.g., "Get Latest", "View Pending Changes..", "Undo...", "Check Out...", "Check In...", etc.

Does this plug-in provide similar commands for GIT?  If not, does any GIT provider for VS?

Thanks,
Dave

Nov 18, 2012 at 3:36 PM
Edited Nov 18, 2012 at 3:37 PM

Hi,

Ok. I think I understand your problem now.

GIT was created by linux-devs for linux-devs and adopted by others. I assume TFS integration feels better, simply by the fact it was created for this purpose, GIT not.

I don't know/use TFS so I can't talk about differences here. But GIT is very simple to use, when you read some tutorials and get used to it.

As a former Unix/Linux dev I never had a problem using the command-line :)

Regarding the installed stuff. The "How to use" says: Install Git for Windows, or Git Extensions, or TortoiseGit. So install Git Git Extensions or TortoiseGit.

As a starting point for learning I always suggest the help-pages of github.com:

- https://help.github.com/categories/19/articles

- https://help.github.com/categories/54/articles

 

For your example "Get Latest" I would suggest using rebasing. Which is quite simple to use.

Example:

  1. You have a upstream-repo
  2. Clone the upstream-repo (automatically adds the upstream-repo to your local-repo as remote)
  3. The first point to _always_ remember: Do Not Work In The Master Branch. One Change, One Branch. git checkout -b BRANCHNAME master. In Git IMHO everything is about branching.
  4. Do some changes/commits in your branch BRANCHNAME...
  5. Fetch all new stuff from the upstream repo: git fetch
  6. Do an rebase to put your commits on top of master:
    1. go to your branch: git checkout BRANCHNAME (if not already/still in it)
    2. do the rebase: git rebase master (btw. in this step you can easily combine your commits by squashing them)
    3. Fix merge-conflict if any and continue rebasing: git rebase --continue
  7. Push it to the remote master-branch: git push origin/master
  8. Delete the branch since the feature is now upstream: git branch -d BRANCHNAME (this one seems to be missing in the GUI)

So you have the latest and your changes combined. This is just a typical workflow I use and suggest. There might be different point of views out there :)

I can see all this options in my VS, except 'git branch -d'

I think the point of this plugin is not to help you in using GIT in the same way maybe TFS does, but it gives you the chance to work with GIT as on command-line and some of us are used to.

Nov 18, 2012 at 4:14 PM

Thanks for the info.

- Dave