Show More
@@ -5,11 +5,13 b' GIT support' | |||||
5 | =========== |
|
5 | =========== | |
6 |
|
6 | |||
7 |
|
7 | |||
8 | Git support in RhodeCode 1.3 was enabled by default. |
|
8 | Git support in RhodeCode 1.3 was enabled by default. You need to have a git | |
|
9 | client installed on the machine to make git fully work. | |||
|
10 | ||||
9 | Although There are some limitations on git usage. |
|
11 | Although There are some limitations on git usage. | |
10 |
|
12 | |||
11 | - No hooks are runned for git push/pull actions. |
|
13 | - hooks that are executed on pull/push are not *real* hooks, they are | |
12 | - logs in action journals don't have git operations |
|
14 | just emulating the behavior, and are executed **BEFORE** action takes place. | |
13 | - large pushes needs http server with chunked encoding support. |
|
15 | - large pushes needs http server with chunked encoding support. | |
14 |
|
16 | |||
15 | if you plan to use git you need to run RhodeCode with some |
|
17 | if you plan to use git you need to run RhodeCode with some | |
@@ -17,14 +19,19 b' http server that supports chunked encodi' | |||||
17 | i recommend using waitress_ or gunicorn_ (linux only) for `paste` wsgi app |
|
19 | i recommend using waitress_ or gunicorn_ (linux only) for `paste` wsgi app | |
18 | replacement. |
|
20 | replacement. | |
19 |
|
21 | |||
20 |
To use |
|
22 | To use, simply change change the following in the .ini file:: | |
21 |
|
23 | |||
22 | use = egg:Paste#http |
|
24 | use = egg:Paste#http | |
23 |
|
25 | |||
24 |
|
|
26 | to:: | |
25 |
|
27 | |||
26 | use = egg:waitress#main |
|
28 | use = egg:waitress#main | |
27 |
|
29 | |||
|
30 | or:: | |||
|
31 | ||||
|
32 | use = egg:gunicorn#main | |||
|
33 | ||||
|
34 | ||||
28 | And comment out bellow options:: |
|
35 | And comment out bellow options:: | |
29 |
|
36 | |||
30 | threadpool_workers = |
|
37 | threadpool_workers = |
@@ -95,14 +95,19 b' class GitRepository(BaseRepository):' | |||||
95 | cmd = [cmd] |
|
95 | cmd = [cmd] | |
96 | _str_cmd = True |
|
96 | _str_cmd = True | |
97 |
|
97 | |||
98 | cmd = ['GIT_CONFIG_NOGLOBAL=1', 'git'] + _copts + cmd |
|
98 | gitenv = os.environ | |
|
99 | gitenv['GIT_CONFIG_NOGLOBAL'] = '1' | |||
|
100 | ||||
|
101 | cmd = ['git'] + _copts + cmd | |||
99 | if _str_cmd: |
|
102 | if _str_cmd: | |
100 | cmd = ' '.join(cmd) |
|
103 | cmd = ' '.join(cmd) | |
101 | try: |
|
104 | try: | |
102 | opts = dict( |
|
105 | opts = dict( | |
103 | shell=isinstance(cmd, basestring), |
|
106 | shell=isinstance(cmd, basestring), | |
104 | stdout=PIPE, |
|
107 | stdout=PIPE, | |
105 |
stderr=PIPE |
|
108 | stderr=PIPE, | |
|
109 | env=gitenv, | |||
|
110 | ) | |||
106 | if os.path.isdir(self.path): |
|
111 | if os.path.isdir(self.path): | |
107 | opts['cwd'] = self.path |
|
112 | opts['cwd'] = self.path | |
108 | p = Popen(cmd, **opts) |
|
113 | p = Popen(cmd, **opts) |
General Comments 0
You need to be logged in to leave comments.
Login now