Comments (7)
Original comment by Sebastian Sdorra (Bitbucket: sdorra, GitHub: sdorra).
Hgwebdir seems to be very complicated in combination with Windows,
because I had recurring problems with the binary modules of Mercurial (osutil etc.).
The only solution that worked during my tests was the following:
-
Install Python 2.6.6
-
Download the latest source code of Mercurial (in my case 1.7.2)
-
Compile the python pure version of mercurial:
** C:\Python26\python.exe setup.py --pure build_py -c -d . build_ext -i build_mo --force
** C:\Python26\python.exe setup.py --pure install --force -
Switch the path within the SCM-Manager to Python-Binary and to Mercurial Script
(f.e.: C:\Python26\python.exe und C:\Python26\Scripts\hg.bat )
More details concerning this problem:
- http://mercurial.selenic.com/wiki/HgWebDirStepByStep#Windows_Specific_Instructions
- http://stackoverflow.com/questions/818571/how-to-setup-mercurial-and-hgwebdir-on-iis
I will look for an easier solution.
from scm-manager.
Original comment by David M. Carr (Bitbucket: [David M. Carr](https://bitbucket.org/David M. Carr), ).
Before I came across the SCM-Manager project, I had been looking into possibly writing my own similar app, probably initially only supporting Mercurial, and went through many of those documentation pages trying to get hgwebdir working. I was first trying to get it to work within IIS and failed, but later tried Tomcat's CGI support and was able to eventually get it to work. I think it was even working with just the pre-packaged Windows binaries of Python and Mercurial, not from source. I'll need to look back to see if I'm correct and can reproduce the install steps.
from scm-manager.
Original comment by David M. Carr (Bitbucket: [David M. Carr](https://bitbucket.org/David M. Carr), ).
Turns out I was mistaken. As you say, hgweb on Windows appears to be pretty tricky. I'm pretty sure that there has to be an easier way, but I haven't found it yet.
from scm-manager.
Original comment by David M. Carr (Bitbucket: [David M. Carr](https://bitbucket.org/David M. Carr), ).
I've done some more experimentation, and my experience seems to match what you posted; lots of issues with binary modules when using the pre-compiled mercurial distribution, but success using the source with --pure, same versions as you listed.
With this approach, the steps seem relatively simple and reproducible... there's just a few too many of them for general usage. Maybe I'll try putting together an installer using IzPack that:
-Installs Python 2.6.6 (bundled in the installer)
-Runs the Mercurial pure source install (bundled in the installer, probably as a ZIP file)
-Optionally adds python and/or the hg to the PATH
Such an installer would provide a one-step install for a Windows setup compatible with running hgweb. Depending on the performance of the "pure" hg, it might make sense to include the Mercurial binary distribution in the bundle as well for better performance.
from scm-manager.
Original comment by Sebastian Sdorra (Bitbucket: sdorra, GitHub: sdorra).
Ive done some more tests and at the end it works with the TortoiseHg 1.1.7 and Python 2.6.6. Mercurial uses .pyo files and Python seems to load those files only when it was started with -O. In the next days i will extend the SCM-Manager.
from scm-manager.
Original comment by David M. Carr (Bitbucket: [David M. Carr](https://bitbucket.org/David M. Carr), ).
Tested your hg installer changes on Windows. Looks like a great approach. I tested with Python 2.6.6 and TortoiseHg 1.1.7 on Windows XP Pro. I then uninstalled everything, and tried again with Python 2.6.6 and a "pure" install of Mercurial from source. I added a minor patch to support that configuration as well. I then uninstalled everything, and tried again with Python 2.6.6 and the "Mercurial 1.7.2 Python 2.6 package" binary. This configuration also seemed to work.
from scm-manager.
Original comment by Sebastian Sdorra (Bitbucket: sdorra, GitHub: sdorra).
It seems to work in combination with Windows 7 too. I think this issue is solved now.
from scm-manager.
Related Issues (20)
- Blank page instead of startup screen HOT 28
- Default branch not set when you create a new GIT repository and don't initialize it during creation HOT 3
- the pack file might be corrupt. Caught 1 consecutive errors while trying to read this pack. HOT 5
- Provide ability to set repository path & use human-readable names for repository folder name HOT 5
- Subversion seems broken constant errors in logs HOT 3
- Enhance URL Redirection for User-friendly Access to SVN Files HOT 4
- Provide details for enabling dataFileCache HOT 1
- Increasing number of projects shown on Repositories page HOT 2
- IllegalArgumentException: event handler not found HOT 2
- Port the scm-hgnested-plugin to 2.x
- When a user is deleted, it is not deleted from the groups it was a member of HOT 2
- SVN dump buggy in docker container of SCM-Manager HOT 1
- Change number display changeset HOT 4
- SCM-Manager hosting using https proxy broken after 3.0.0 upgrade HOT 5
- 'create repository'-permission on namespace level HOT 1
- debian upgrade to 3.0 hangs daemon due to privilege issue HOT 3
- Latest Tag goes from 3.0.3 to 2.46.2 and docker hub scmmanager/scm-manager:latest has followed HOT 2
- Docker compose environment definition for forwardHeadersEnabled HOT 7
- I have found a issue in SCM-Manager Plugin error please help me to resolve the issue HOT 7
- Mirror Tags are always gray HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from scm-manager.