REQUEST: Suggestions for an easy to use repository that can merge

Hello, everyone,

I’d like to ask everyone’s opinion on repositories. I’m looking for an easy-to-use, easy-to-implement repo that can handle merges.

Currently, we have a GIT repo using SmartGIT that was setup by the lead developer (who has moved to greener pastures.)

While the setup is certainly robust, it’s also overly complex for something that (IMHO) should be relatively simple.

There is a master repo and a developer repo. In order to keep the repo current with changes, we have to jump through a lot of hoops. Before making any changes, one has to start a feature. Then one makes changes, and when all changes are done, one stages the files, commits the files, pushes the files, and then closes the feature. That’s just to update the developer repo. In order to get the master repo to match, we then have to start a release, then close the release.

If any step is forgotten or done in a different order, all kinds of chaos will ensue. I’ve got a project that I’ve been working on-and-off for about a year. I have been following all the directions, and everything seemed like it was in order. Today, I make one very minor change (add an ID to a list), and before I’m done with the stage/commit/push/finish, I get an error message that my local files are three commits ahead of the developer repo.

Times like this, the lead developer would open a GIT BASH window, type three lines of command line code, and VOILA!, fixed. Well… he’s no longer here, and I don’t know what to do.

I’m sick of this. I need a repo that can merge and rollback without the repo equivalent of a Lament Configuration. Any suggestions?

Thank you,

V/r,

:slight_smile:

Didn’t the lead developer give someone admin rights to the repositories? If not, may there be 20 kinds of plagues unleashed onto him. :stuck_out_tongue:

Does anyone at least have contact info for him? You could find out what commands he used, and can share that with the team…

Since the dev network is isolated from the internet, there is no reason for anyone to not have admin rights, as far as the repo goes, so every developer has admin rights to the GIT.

I am in touch with the former lead dev, but this isn’t one of those situations where he can just provide a list of commands and describe what each does. The way this is set up, some errors can be fixed over the phone, but most of them are “sit down at a system, look at twenty things to determine exactly what the issue is” situations. He’s kind of overly-complex, and he likes to set things up in a very complex style. Which was great when he worked, here, but not so great, now. :smile:

V/r,

:slight_smile:

Anyone versed enough in repositories that can make a recommendation?

V/r,

:slight_smile:

I’m not versed in repositories. The only ones I know are the ones everybody know… well, probably people know more than I do.

@ParkinT or @James_Hibbard may know of some help

I am certain I can help you with this. It sounds like:

  1. By using the GUI tool there are many things about Git you do not completely understand
  2. Gaining just a little better understanding of “the way in which git thinks” would be of great benefit

As a matter of fact, I have recently gained a much deeper understanding of git. It has been said, ‘the best way to learn something is to commit to teach it’ and that is what happened. Just this week I completed a six month process of creating a 137 minute video tutorial [under contract] for Packt Publishing. It is not yet released (so I cannot provide a self-promotional link :wink:), but is expected to appear on their site any day this week. It would be exactly what you need, I believe.

Perhaps we could get on a Google Hangout or Skype session (Pair Programming) and I can help guide you a little to less frustration. PM me to set up something.

2 Likes

It sounds like ParkinT has given you your answer, but for what it’s worth, I would invest some time in learning Git.
I would also lose the GUI, as this adds a layer of complexity that it sounds like you don’t need.
I use Git for just about everything and I love it. It’s really not very hard to learn enough that you can incorporate it into your daily workflow.

There are many things about GIT that I do not understand, period. I finally “get” stashing.

Unfortunately, where I work the security is so tight that Skype and Hangouts (and anything even remotely resembling them) are blocked.

If learning more about GIT (SmartGIT) is the only option, I don’t have much choice. BUT, if there is any repository that is simple to use and doesn’t require 50 steps to do one simple thing, that would be much preferred.

Thank you,

:slight_smile:

We can work on git skills with any repository. The concepts and techniques apply regardless of the actual data.
As a matter of fact, I recommend (to anyone reading this) you go to GitHub and “Pull” a repository - any repository - with the sole intention of experimenting and practicing. There is NOTHING you can break. And you will not ‘push’ your changes back so “No harm, No Foul”.

Do you mean version control system?
If not, I may have misunderstood the gist of this thread.
It really sounds like your problem is with the GUI, or the way your former dev set it up, as Git does not generally require 50 steps to do one simple thing.

1 Like

Oh, trust… granted, I exaggerated a bit with 50 steps (I was really p**sed off), but I believe I outlined everything that has to be done in my first post. That has to be done after all changes have been made in development.

Actually, I just spent 2.5 days emailing back and forth with him, about this. It took that long for him to realise that he had several “post-receive” files that had an incorrect line of code in them. Once he had me correct them, this seems to be working. Time will tell.

Thanks to everyone who chimed in. I’m sure I’ll re-visit this topic, again, in the near future. :smile:

V/r,

:slight_smile:

I just ran across this: http://thelinell.com/2014/12/23/curated-git-links-of-2014/
Maybe that’ll help in future?

Thanks for the link, @Pullo. That probably will come in very handy.

V/r,

:slight_smile:

And I highly recommend Ry’s Git Tutorial for some background/overview information about how git works.

And the hits just keep on coming.

The issue that started this thread has been fixed, so another one just HAD to rear its ugly head.

Apparently, on this next project, when I push to the master repo it’s updating just fine. When I try to then sync to the developer repo (from which I then xfer to CD to get it to the live server), all the logs will say is “not deployed”. No error message, no details.

I’ve checked the post-receive file, and it is exactly as it should be. What else should I check?

V/r,

:slight_smile:

PS… one of the reasons I came into work, today, was so that I could pull everything from my desk and start from scratch with a more efficient layout, so there may be a huge delay for responding.

[ot]One of the reasons I came to work today was because I had no other choice…[/ot]

1 Like

That is such a bummer, @molona! Sorry to hear that you didn’t have a choice. I volunteered primarily because I didn’t want to use PTO to have the day off.

I hope that your boss(es) will at least let you leave early, but give you a full day of pay.

V/r,

:slight_smile:

What do you mean by “sync”? Are you pulling from the other computer?
Have you pushed your changes to another computer?

It really sounds like your group’s workflow is such that is seems to ‘buck’ the design principles of git.

That’s a bummer. Our prime contracting company told us that we would follow executive order. However, the subcontracting company I work for originally was going to make us use PTO, but they got b****ed at so we got the day off.

1 Like

Like I said, the developer who set this up is one of those kind who thinks in the 9th dimension and loves complexity for the sake of complexity.

In all cases, I am pushing changes to master, then pushing (apparently?) from master to developer, then burning files from developer to CD for deployment on live server.

I don’t know how it’s set up, and the person who set it up has switched to a different contract and is no longer here.

:slight_smile: