Anything like VisualSVN Server for Mercurial? - windows

VisualSVN server is a nice piece of software; particularly in that it uses the builtin Windows authentication mechanism on my server. I'd like to try to start using Mercurial though, and I'd like to keep the Windows authentication scheme.
Is there some way to set this kind of thing up using the tools available on Windows Server 2008 R2 Standard (in particular, IIS 7)?

If you're using it within a LAN, you can just store your mercurial repo on a windows network share - no need for a server component.
If need it web-accessible, the answer Am linked to above seems to cover how to set up IIS.
If you're not adverse to paying, Kiln might be worth investigating, though I can't tell from the info on the site if they use Windows auth.

Excuse my necroposting, but I've just released an alpha version of HgLab, which is a purely managed Mercurial Server for Windows.

Related

Out-of-band programmatic identification of Windows Server vs Client

I have some free-standing C++ code (i.e. not a Windows program) that needs to identify the version of Windows that is installed on a PC.
I can easily differentiate between the different Windows client releases by kernel version (e.g. GetFileVersionInfo on ntoskrnl.exe), however I'm wondering if there's a reliable way to distinguish between a client and server installation.
A problem arises when using this method to distinguish between Windows Vista SP2 and Windows Server 2008 SP2 (6.0 build 6002 the both of them) and Windows 7 and Windows Server 2008 R2 (6.1 build 7600 for RTM and 6.1 build 7601 for SP2, both). What is a reliable (and preferably as straight forward as possible, avoiding the registry would be great as access to Win32 API is not available) method of identifying client vs server OSes correctly for code running outside the environment?
I suppose I could check for files only present on the server edition (what's a good file guaranteed to be on any server edition install, regardless of configuration?), check the Panther folder (which is safe to delete, so no guarantees there), etc. but I'm sure this is a problem that people have run into before and (hopefully) solved more elegantly?
(Sidenote: this question has been asked on SO before, but the solution (WMI) is inapplicable for out-of-band checking)
I'm not entirely sure what you mean about out of band checking, so I'm going to ignore that for the moment.
The normal way would be to call GetVersionEx, and look at the wProductType member of the OSVERSIONINFOEX.
A PE image does NOT specify whether the image should work on a client or server. It only specifies the runtime requirements regarding subsystem, dependencies, memory, affinity, etc...
I ended up searching for a number of binaries in the system32 directory that are generally associated with the Server Edition of Windows. It's not very clean, but in practice it works very well.

Subversion deployment onto Windows environment

I need to deploy an source control enviroment. I have heard Visual Source Safe is rubbish and to avoid it.
So I have been looking into SVN, but what I don't understand is how to deploy this?
We have one development server which holds all of our content, I need it so the 10+ developers can sign out files/folders work on them and return them.
The location in use is an network share hosted on the web server. So if there a 'server' installation for Windows so I can configure the repositories?
Any help would be much appreciated.
Al
Have a look at http://www.visualsvn.com/server/ which is a free SVN server for Windows. It's very easy to setup and configure.

Setup an SVN Server?

Does anybody know how to setup a basic SVN server on my windows pc? I want to create an SVN repository to store the code for my home projects I've got lined up.
Anyone know how to do this?
Install VisualSVN Server. The server part is free. You can also just use any SVN tool to just create local repositories on your file system if you like. My favorite client side tool is TortoiseSVN.
I can strongly recommend VisualSVN. It's very easy to setup, configure and use.
I've installed it recently and have found it utterly pain-free. SVN client-wise, I'd recommend TortoiseSVN. It integrates directly with Explorer and is, again, easy to use.
If you're working with Visual Studio, AnkhSVN is a great client that integrates into VS and doesn't seem to have any problem with being used side-by-side with TortoiseSVN.
I use VisualSVN on my Windows 2008 server and it works great. I then use TortoiseSVN on my client machines. The installation is painless and you should be up and running in no time.
If you are the only one accessing the repository all you need is tortoisesvn. You can make a local repository anywhere you want just by right clicking and selecting "Create Repository Here" then just use the file path for the URL.
I would also recommend Visual SVN if you like to get SVN installed on your Windows PC. There is a nice tutorial that describes installation and configuration process.
However think twice before hosting your product locally as that isn't the best option.
I would also Check out Assembla. Online hosting for both SVN and Git. I have used both VisualSVN and Assembla for personal projects.
Use ubersvn for personal use it is working fine and it's freeware.
The program contains all the dependencies needed to set up and run an Apache Subversion server on Windows, Linux or Mac OS X operating systems
.Check this here
What is the final veredict? for a single user local repository what would be the best option:
just create local repositories with TortoiseSVN (simpler and less
resource consuming)
install VisualSVN server to get the extra functionality it offers
(for example, the automatic backups are quite interesting..)
The idea of using VisualSVN server in my local machine with the automatic backups stored in a google drive folder in order to keep the repository in case of catastrophe sounds good, but maybe is a bit overkill.. is it heavy the server initialization? the machine is only booted while I am working in my spare time.. if the server takes no negligible time to start every time I turn on the PC maybe the first option is better.
Check Beanstalk it's not really an answer to the question you asked, but it might save you a lot of trouble. You could also check the VM marketplace, there are many virtual machines that would get you up and running super fast.
Here's also a very nice one called PMRepo, it includes Trac, Subversion, and Hudson in one VM.
If you want to create SVN repo, you can use this VisualSVN
By using this tool, you can easily create SVN repo and it will give it's REPO URL. so you can use it for cloning. It is the easiest way to create repo in any machine and use the its repo URL
before setting up SVN you need:
1.Install Putty http://www.putty.org/
2.Creat Droplet on Digital Ocean
3.Install Apache,Install PHP,Install phpMyAdmin
after that follow steps on below link:
https://progtec.wordpress.com/2015/10/18/how-to-setup-svn-server/

SVN server host os

Recently I was searching on how to secure svn repository, or otherwords how to enable ssl connection to svn repository for a windows server 2003. Does it make more sense to use Linux server instead?
If you're on Windows, take a look at VisualSVN server. It's a wrapper around "real" SVN, and setting it up to accept only SSL connections is a matter of minutes.
It really comes down to which OS are you most comfortable (best able to) administer? My experience is that Subversion works fine with both Windows and Linux.
As Pekka points out, VisualSVN server makes the set up very easy.

In what OS should I host subversion?

I have decided to go with Subversion for a source control repository for my personal and side projects and I'm now trying to decide what OS to use. Currently my file server for my home network is Windows 7 beta. I'm wondering if I should wipe it and install Windows Server 2008 instead? Basically I'd like to know if there are things I could take advantage with a server OS that I can't with Windows 7. First thing that comes to mind is accessing subversion remotely with a VPN connection.
I'm a .net developer, but have dabbled in Linux a bit so I'm not completely turned off to the idea of an ubuntu or debian server...
I imagine the installation and configuration process might go off with fewer hitches if installed on Linux, just because of the package management, but that's assuming some experience with the package system of $whatever_distro. If you're comfortable with Windows, Subversion works perfectly well on there. I've set it up on both, but prefer the Linux installation process (easier Apache integration, in my view), but I had pre-existing Linux experience.
If you're familiar with Windows, I bet you'll find the installation and configuration process easier there. As others have said, many of the tools are cross-platform.
You can run a Subversion server on Windows or Linux (or whatever) so it really doesn't matter. Pick whichever one you already have and feel most comfortable with. Since you are a Windows developer I see no real reason to toss Linux into the mix though.
If your goal is to minimize the amount of work you put into the maintenance of subversion, go with the OS you are most comfortable with. Many maintenance scripts, and subversion hooks are written and available in perl and python which are available for both windows and linux.
One advantage to the Windows server OSes over their client counterparts is that the client OSes are limited as to the number of inbound connections. If you are going to be the only person working on the repo, this may not make a difference. However, if there are multiple people, then this would be an issue. XP Pro/Vista Ultimate are limited by Microsoft to 10 inbound connections. I cannot speak for Windows 7.
To make life easy, try VisualSVN Server. For personal projects there's no reason to setup a separate server just for SVN.
Windows 7 will be able to host Subversion with no problems whatsoever..
If your file-server is already setup and working under Windows 7, I'd say stick with that.. Adding SVN is no reason to install a new OS
You don't need a server at all to use subversion.
If you've already got a file server on your home network, and you're doing this only for you and your personal projects, just use a subversion client such as TortoiseSVN and create your repository (or repositories) on your file server via network share (or mapped network drive, etc).
I wouldn't recommend this for multi-user setups (unless each has their own repository), but for a single user this is the simplest option. And using this approach, to answer your question, you wouldn't gain anything by switching to a server OS such as Windows Server 2008.
I'd actually recommend going with a hosted Subversion provider instead of setting up Subversion on Windows or getting a second server for that purpose. I work for ProjectLocker, but if you Google "subversion hosting", you'll see there are a number of providers that offer free or reasonably priced solutions. The advantages:
It's a hosting provider's primary job to keep your code safe, secure, and accessible, so they focus on uptime, backups, and security monitoring so you don't have to
You don't have to learn how to be a system administrator or Subversion administrator; several providers have user interfaces that make it easy to manage users and permissions.
Hosting instead of DIY lets you focus on what you actually care about: writing great software
I suggest you take a look at ProjectLocker and some of the other providers and decide which one is right for you. You may decide that doing it yourself is the best option for you, but for many people in your situation, a hosted solution has met their needs.

Resources