I'm trying to "portablize" git, so I want to send the required executables from the make process of git to my hosted web server. Can I do that? Do you think the executables will work?
views:
53answers:
1
+3
A:
The way I do it is to:
- get all Git dependencies (as listed in this Solaris package site, but this works for any Unix platform)
- compile those dependencies with
--prefix=/home/myuser
and install them in theusr/local/lib
of my home directory - then compile Git (still avoiding any reference to a system path like /usr/local/lib, but only using the lib and include within my homedir)
- and install Git in the /home/myuser/git directory
I can then copy only /home/myuser/git
and /home/myuser/usr/local
(and $prefix/libexec/git-core
as Jakub mentions in the comments) to any other similar server, knowing it will work in isolation from any existing system libraries.
VonC
2010-07-13 16:57:43
That will work with built-in commands, but some commands are external scripts / programs and have to be copied separately from `$prefix/libexec/git-core/` (including e.g. `git stash`, `git pull` (but not `git fetch`), `git bisect`, etc.)
Jakub Narębski
2010-07-13 17:12:00
how do you mean copied separately?
jphenow
2010-07-13 17:31:16
Umm... Okay now its saying cannot execute binary file...
jphenow
2010-07-13 17:57:01
@jphenow: it is just a permission issue (like `chmod 755` the copied binaries)? Or a `PATH` issue? (remember to set a similar set of environment variable when using that distribution on the remote server. `/usr/local/lib` shouldn't be part of the `PATH`)
VonC
2010-07-13 18:11:16
jphenow
2010-07-13 18:45:55
@jphenow: that is probably the cause of the execution issue: I always deploy on "similar" platform.
VonC
2010-07-13 19:07:13
I'll have to find out what the shared servers on GoDaddy are running and try it again
jphenow
2010-07-16 16:33:16