@@ -62,20 +62,19 @@ def __init__(self, path=None):
62
62
63
63
self .git = Git (self .wd )
64
64
65
- @ property
66
- def description (self ):
67
- """
68
- The project's description. Taken verbatim from GIT_REPO/description
65
+ # Description property
66
+ def _get_description (self ):
67
+ filename = os . path . join ( self . path , 'description' )
68
+ return file ( filename ). read (). rstrip ()
69
69
70
- Returns
71
- str
72
- """
73
- try :
74
- f = open (os .path .join (self .path , 'description' ))
75
- result = f .read ()
76
- return result .rstrip ()
77
- finally :
78
- f .close ()
70
+ def _set_description (self , descr ):
71
+ filename = os .path .join (self .path , 'description' )
72
+ file (filename , 'w' ).write (descr + '\n ' )
73
+
74
+ description = property (_get_description , _set_description ,
75
+ doc = "the project's description" )
76
+ del _get_description
77
+ del _set_description
79
78
80
79
@property
81
80
def heads (self ):
@@ -199,24 +198,22 @@ def commit_deltas_from(self, other_repo, ref = 'master', other_ref = 'master'):
199
198
diff_refs = list (set (other_repo_refs ) - set (repo_refs ))
200
199
return map (lambda ref : Commit .find_all (other_repo , ref , max_count = 1 )[0 ], diff_refs )
201
200
202
- def tree (self , treeish = 'master' , paths = [] ):
201
+ def tree (self , treeish = 'master' ):
203
202
"""
204
203
The Tree object for the given treeish reference
205
204
206
205
``treeish``
207
206
is the reference (default 'master')
208
- ``paths``
209
- is an optional Array of directory paths to restrict the tree (default [])
210
207
211
208
Examples::
212
209
213
- repo.tree('master', ['lib/'] )
210
+ repo.tree('master')
214
211
215
212
216
213
Returns
217
214
``GitPython.Tree``
218
215
"""
219
- return Tree . construct (self , treeish , paths )
216
+ return Tree (self , id = treeish )
220
217
221
218
def blob (self , id ):
222
219
"""
@@ -377,25 +374,22 @@ def archive_tar_gz(self, treeish = 'master', prefix = None):
377
374
kwargs ['prefix' ] = prefix
378
375
self .git .archive (treeish , "| gzip" , ** kwargs )
379
376
380
- def enable_daemon_serve (self ):
381
- """
382
- Enable git-daemon serving of this repository by writing the
383
- git-daemon-export-ok file to its git directory
384
-
385
- Returns
386
- None
387
- """
388
- touch (os .path .join (self .path , DAEMON_EXPORT_FILE ))
389
-
390
- def disable_daemon_serve (self ):
391
- """
392
- Disable git-daemon serving of this repository by ensuring there is no
393
- git-daemon-export-ok file in its git directory
394
-
395
- Returns
396
- None
397
- """
398
- return os .remove (os .path .join (self .path , DAEMON_EXPORT_FILE ))
377
+ def _get_daemon_export (self ):
378
+ filename = os .path .join (self .path , self .DAEMON_EXPORT_FILE )
379
+ return os .path .exists (filename )
380
+
381
+ def _set_daemon_export (self , value ):
382
+ filename = os .path .join (self .path , self .DAEMON_EXPORT_FILE )
383
+ fileexists = os .path .exists (filename )
384
+ if value and not fileexists :
385
+ touch (filename )
386
+ elif not value and fileexists :
387
+ os .unlink (filename )
388
+
389
+ daemon_export = property (_get_daemon_export , _set_daemon_export ,
390
+ doc = "git-daemon export of this repository" )
391
+ del _get_daemon_export
392
+ del _set_daemon_export
399
393
400
394
def _get_alternates (self ):
401
395
"""
0 commit comments