git pull without online repository

I know this is probably a bad question but I am trying to get my software team at my company to make a move to git by using SourceTree. I know one issue bound to come up from them is how do they knowto get changes from other people. Specifically if someone modifies the code and wants to update our boss.

 

I am well aware online repos have pull requests which work well, but my company would never take our repos online nor would they consider installing an enterprise version. So my only solution to this is just emailing back and forth for people to do manual fetching/pulling. 

 

I want to know if there is a way, specifically in SourceTree, to let some user now about a change (essentially the equivalent of a pull request), if they are remotes of the repo.

4 answers

Not having a central server in an enterprise environment is completely insane. Not having something where you can have pull requests is simply a waste of the company's most valuable resource: developer time.

I think the first thing you should do is to try to convince whoever makes the budgeting decisions, that a locally hosted, professional Git server (e.g. Stash or GitHub Enterprise) is worth the money.

If this does not work, I would go with Seth's suggestion above that you have a file share on a server (make sure it has backups!) containing bare repos that everybody clones/pulls/pushes to. It is very important that there is one place where you have the "official" version of the repos, which are used as the basis of releasing the software (and the backups, in case something goes sideways).

Once you have a central place, people can periodically fetch (SourceTree has an option to do this in the background, by default it is on and happens every 10 mins.) to see if there are commits to pull.

How is this managed currently? And you don't need an "enterprise" git server. Just install git on any internal server: https://git-scm.com/book/en/v2/Git-on-the-Server-Setting-Up-the-Server

Currently we use SVN (poorly and incorrectly) and use it more of a dropbox like thing. We also have a file system on a network, so setting up a git server is a no go as well. Basically what I am going to have them do is map a network drive to our "Git Repository Folder" which will contain the bare repos. They'll clone and push to that. I will teach them how to add each other as remotes.

Git is the right choice for the situation you're describing - you want de-centralized source control. I've never used git that way, but there are some descriptions of basic distributed workflows here: https://git-scm.com/book/en/v2/Distributed-Git-Distributed-Workflows You might also inquire on the git mailing list about what other common workflows are out there. It looks to me (no experience) like any decentralized workflow is going to require more discipline and communication on the part of the developers. If that's going to be a problem, you should definitely consider setting up a local, central git instance, and have everyone push/pull from it.

Suggest an answer

Log in or Sign up to answer
Atlassian Community Anniversary

Happy Anniversary, Atlassian Community!

This community is celebrating its one-year anniversary and Atlassian co-founder Mike Cannon-Brookes has all the feels.

Read more
Community showcase
Brian Ganninger
Published Jan 23, 2018 in Sourcetree

Tip from the team: workflow and keyboard shortcuts

Supported Platforms macOS Sourcetree has a lot to offer and, like many developer tools, finding and using it all can be a challenge, especially for a new user. Everyone might not love ...

649 views 0 4
Read article

Atlassian User Groups

Connect with like-minded Atlassian users at free events near you!

Find a group

Connect with like-minded Atlassian users at free events near you!

Find my local user group

Unfortunately there are no AUG chapters near you at the moment.

Start an AUG

You're one step closer to meeting fellow Atlassian users at your local meet up. Learn more about AUGs

Groups near you