@@ -209,7 +209,7 @@ def fetch(self, remote, remote_branch, local_branch):
209
209
remote .fetch (':' .join ([remote_branch , local_branch ]), progress = pb )
210
210
print ()
211
211
212
- def clone (self , user , repo , branch = 'master' ):
212
+ def clone (self , user , repo , branch = 'master' , rw = True ):
213
213
'''Clones a new repository
214
214
215
215
:param user: namespace of the repository
@@ -222,10 +222,10 @@ def clone(self, user, repo, branch='master'):
222
222
'''
223
223
log .info ('Cloning {}…' .format (repo ))
224
224
225
- remote = self .add (user = user , repo = repo , tracking = True )
225
+ remote = self .add (user = user , repo = repo , tracking = True , rw = rw )
226
226
self .pull (remote , branch )
227
227
228
- def add (self , repo , user = None , name = None , tracking = False , alone = False ):
228
+ def add (self , repo , user = None , name = None , tracking = False , alone = False , rw = True ):
229
229
'''Adding repository as remote
230
230
231
231
:param repo: Name slug of the repository to add
@@ -262,16 +262,16 @@ def add(self, repo, user=None, name=None, tracking=False, alone=False):
262
262
if not alone :
263
263
# if remote all does not exists
264
264
if not all_remote :
265
- self .repository .create_remote ('all' , self .format_path (repo , user , rw = True ))
265
+ self .repository .create_remote ('all' , self .format_path (repo , user , rw = rw ))
266
266
else :
267
267
url = self .format_path (repo , user , rw = True )
268
268
# check if url not already in remote all
269
269
if url not in all_remote .list :
270
- all_remote .set_url (url = self .format_path (repo , user , rw = True ), add = True )
270
+ all_remote .set_url (url = self .format_path (repo , user , rw = rw ), add = True )
271
271
272
272
# adding "self" as the tracking remote
273
273
if tracking :
274
- remote = self .repository .create_remote (name , self .format_path (repo , user , rw = True ))
274
+ remote = self .repository .create_remote (name , self .format_path (repo , user , rw = rw ))
275
275
# lookup tracking branch (usually master)
276
276
for branch in self .repository .branches :
277
277
if tracking == branch .name :
@@ -280,7 +280,7 @@ def add(self, repo, user=None, name=None, tracking=False, alone=False):
280
280
break
281
281
return remote
282
282
else :
283
- return self .repository .create_remote (name , self .format_path (repo , user , rw = True ))
283
+ return self .repository .create_remote (name , self .format_path (repo , user , rw = rw ))
284
284
285
285
def open (self , user = None , repo = None ):
286
286
'''Open the URL of a repository in the user's browser'''
0 commit comments