Use SourceTree with synology github server?
Asked by John McClenahan:

I'm a very naive user of Git, and have only the experience of using a Public account on GitHub, which someone more experienced set up for me, and which I haven't used for a couple of years.

I have a Synology DiskStation NAS (DS214 Play) which has a Git Hub server application that I have dowloaded and enabled.

I can't see how (or even if it is possible) to use Source Tree to connect to the Diskstation - I only get the choice of GitHub (or sometimes BitBucket) as the Account type, and can't see how to get a remote connection to the DiskStation Git server.

Can anyone tell me if this is (a) possible, and (b) if so, how I use SourceTree to set up new local and remote repositories for a new programming project I want to start, and not make public as on GitHub?

My Diskstation is at the local network IP address 192.168.2.155, and I can connect to the GitHub repository via SSH using the url <sss://john@192.168.2.155/github>, being prompted for the password for user 'john'.

Thanks in advance if you can help.

I'm using the latest free version 2.1 of SourceTree for Mac,

John McClenahan


Answers:
author: childnode
body: Hi @John McClenahan,

first of all: if you ask me, you should not host your own stuff unless you understood the concepts! If you're new to programming, you should not mess up your fun by gangling yourself with tools. Try to learn programming first, else it's just frustrating. It's good to keep in mind, that you should use a VCS and make backups.

secondly: I bet it's not a "gitHub" application but the offered gitLab Server. If you don't get what's the difference: refer to point #1. If you even don't get what and how a decentralized version control works, ... I will repeat myself...

to be more objective on your question:

Sourcetree only offers graphical / GUI enhancements for Bitbucket and gitHub. Any other hosts simply have to be used with manually set up https or ssh clone. just open ST, New \> Clone from URL and paste the SSH link as remote.

\~Marcel

comments: author: John McClenahan
body: Thank you. That's helpful advice. So it is possible, but not very advisable, to use my own remote server. I really only wanted to do it to avoid going public with what is a private (though not secret) programming project.

By trying a few settings in SourceTree I have managed to get it to connect to my Synology Git server. I'll think again about whether and if so how to use it, or whether to revert to a public GitHub account.

Of course you are right about what Synology offers - it is called a Git server, not GitHub server, in the Package Centre. Sorry about misnaming that.

I've been programming in an amateur way for several decades, but only in the last few years doing anything complex enough (and occasionally joint with others) so am still getting used to having proper version control.

Since posting, i have been reading more about how Git works, and am getting clearer in my head about what it does and how to set it up.


author: horzelski
body: @John: could you describe a bit more how did you handle connection from speedtree to synology git?


author: John McClenahan
body: Unfortunately, at this distance of time, I can't really tell you. Indeed, when I look at my settings in Sourcetree now, I'm not at all sure that I AM connecting to the Synology Git server. It has just the same settings as the main GitHub account, and no option to set the IP or URL of the server.

And as it happened, I didn't use it anyway after trying to set it up.


author: horzelski
body: Thanks for info!


author: Werek
body: HI I want to use SourceTree for or little team only in our intranet. So we have a Synology with Git-server and SourceTree only on Macs. Up to date we connect with AFP to the Synology. We have a git-Folder generated and Users have permissions. SourceTree works fine and I could just by drag and drop add the Folder as Repository. Unfortunately it happens that I can not add files to be staged. Here e.g. and Error from a Projekt-folder in the git Folder.

```
git -c diff.mnemonicprefix=false -c core.quotepath=false -c credential.helper=sourcetree add -f -- "Quecksilber/Barakova Quecksilber.png" fatal: Unable to write new index fileCompleted with errors, see above
```

```
But the permissions look right: 
```

```
-rwx--x--x@ 1 andreas  staff  187407  2 Aug 12:50 Barakova Quecksilber.png
```

Has somebody an idea?

comments: author: europoint
body: I'm afraid I find the first response a little frustrating. "Try to learn programming first". The first lesson to learn in programming is to implement best practice, which includes source control and config management, as well has good coding practice. All the programming knowledge in the world is no use if you lose your code or don't know which version you have!

So go ahead, install the tools, learn how they work and and start from a clean and unsullied knowledge base. Otherwise you will find it a lot harder to get your head round the concepts and standard best practice that any organisation would expect of you if you were to work for them!

And also having written code on and off for several decades, I'm still finding it difficult to connect Sourcetree to the Synology Git server - because the configuration details are thin on the ground, not because I don't know what to do, since I've set Sourcetree up to connect to my organisations git server without issue.


author: Emanuel Costan
body: Hello guys!

Can you please explain how to clone a repository from Synology, with SourceTree? I get stuck like on the attatched image. The server should be configured properly. Thanks in advance!

![S01.jpg](https://community.atlassian.com/t5/image/serverpage/image-id/12677i41A07E8CFD2A75E2/image-dimensions/426x454?v=v2 "S01.jpg")


author: Maik Ledwina
body: Hello Guys,

I'm also interessted how I have to connect to the repository. I have to use our NAS Git server from internal and external. Internal, i can set it as a network drive. But how i have to do this from extern?

I will Add the repository from the git Server into my sourcetree as path

ssh://gituser@git.xxxx.com:22/Volume1/git_repos/myrepository/

but they tell me every time, that this not is a current path.

When I try to clone from the repositry, I use the same path then bevor. Then Sourcetree ask me for the password and as next he tell me, that the path is not correct and, in the subwindow, they tell me, that in the folder isn't a repository. But in this folder i have build a repository with git init --bare a repository.

What is wrong?

Thanks