largefiles: fix commit when using relative paths from subdirectory
Remove cwd handling from getstandinmatcher - it did not belong there, as proven
by the tests.
--- a/hgext/largefiles/lfutil.py Mon Jan 28 15:19:44 2013 +0100
+++ b/hgext/largefiles/lfutil.py Fri Jan 25 16:59:34 2013 +0100
@@ -224,13 +224,7 @@
'''Return a match object that applies pats to the standin directory'''
standindir = repo.wjoin(shortname)
if pats:
- # patterns supplied: search standin directory relative to current dir
- cwd = repo.getcwd()
- if os.path.isabs(cwd):
- # cwd is an absolute path for hg -R <reponame>
- # work relative to the repository root in this case
- cwd = ''
- pats = [os.path.join(standindir, cwd, pat) for pat in pats]
+ pats = [os.path.join(standindir, pat) for pat in pats]
elif os.path.isdir(standindir):
# no patterns: relative to repo root
pats = [standindir]
--- a/tests/test-largefiles.t Mon Jan 28 15:19:44 2013 +0100
+++ b/tests/test-largefiles.t Fri Jan 25 16:59:34 2013 +0100
@@ -1987,6 +1987,34 @@
.hglf/large.dat
.hglf/large2.dat
+Test actions on largefiles using relative paths from subdir
+
+ $ mkdir sub
+ $ cd sub
+ $ echo anotherlarge > anotherlarge
+ $ hg add --large anotherlarge
+ $ hg st
+ A sub/anotherlarge
+ $ hg st anotherlarge
+ A anotherlarge
+ $ hg commit -m anotherlarge anotherlarge
+ Invoking status precommit hook
+ A sub/anotherlarge
+ $ hg log anotherlarge
+ changeset: 1:9627a577c5e9
+ tag: tip
+ user: test
+ date: Thu Jan 01 00:00:00 1970 +0000
+ summary: anotherlarge
+
+ $ echo more >> anotherlarge
+ $ hg st .
+ M anotherlarge
+ $ hg revert anotherlarge
+ $ hg st
+ ? sub/anotherlarge.orig
+ $ cd ..
+
$ cd ..
issue3651: summary/outgoing with largefiles shows "no remote repo"