Comments (5)
Thanks for the report. I can add some checks to make it error out if people specify the invalid paths '.', '..', or maybe even '.git'. Since --path-rename is just a string replacement (with a bit of help for handling the trailing slash for you) and since git records paths by their relative path (meaning it'll never record a name like './README'), you shouldn't be trying to rename 'modules/openapi-generator/src/main/resources/python' to '.' but to '' (the empty string). This should work for you:
git filter-repo --path modules/openapi-generator/src/main/resources/python --path-rename modules/openapi-generator/src/main/resources/python:
where there is nothing after the colon character.
from git-filter-repo.
Thank you very much for the explanation. Yes, a specific error message would have been very helpful :)
Cheers
from git-filter-repo.
I added an error message for this case to the code; thanks for the report!
from git-filter-repo.
I also ran into this error trying to move a subdirectory to root. The proposed solution of using an empty string to represent the project root seems to cause an error: "fatal: Empty path component found in input".
Is this use-case currently supported? (Or am I mistakenly using an old version? I am using version 81cc263d7659 according to --version
)
% ~/git-filter-repo/git-filter-repo --path lib/react-app/src --path-rename lib/react-app/src: --force
fatal: Empty path component found in input
fast-import: dumping crash report to .git/fast_import_crash_2930
Traceback (most recent call last):
File "/home/jcrites/git-filter-repo/git-filter-repo", line 3913, in <module>
filter.run()
File "/home/jcrites/git-filter-repo/git-filter-repo", line 3850, in run
self._parser.run(self._input, self._output)
File "/home/jcrites/git-filter-repo/git-filter-repo", line 1414, in run
self._parse_commit()
File "/home/jcrites/git-filter-repo/git-filter-repo", line 1267, in _parse_commit
self._commit_callback(commit, aux_info)
File "/home/jcrites/git-filter-repo/git-filter-repo", line 3406, in _tweak_commit
self._insert_into_stream(commit)
File "/home/jcrites/git-filter-repo/git-filter-repo", line 3825, in _insert_into_stream
self._parser.insert(obj)
File "/home/jcrites/git-filter-repo/git-filter-repo", line 1392, in insert
obj.dump(self._output)
File "/home/jcrites/git-filter-repo/git-filter-repo", line 720, in dump
change.dump(file_)
File "/home/jcrites/git-filter-repo/git-filter-repo", line 621, in dump
file_.write(b'M %s %s %s\n' % (self.mode, self.blob_id, quoted_filename))
BrokenPipeError: [Errno 32] Broken pipe
% ~/git-filter-repo/git-filter-repo --version
81cc263d7659
from git-filter-repo.
The last comment is not quite the same as the original bug report; it'll be handled in the separate new bug report and this one can remain closed.
from git-filter-repo.
Related Issues (20)
- Update submodule hashes?
- Renaming paths into pre-existing path causes double-nested paths (sometimes)
- Keep last 3 months of package-lock.json diffs only HOT 1
- Question: prune lfs files
- remark: Pity that this tool can't run scripts/programs and it is not clearly stated HOT 1
- minor: Logic error with `_commits_referenced_but_removed` on a GitHub Gist web url in commit message 😂
- Crash when path contains emoji HOT 1
- Question: Recommended way to log the usage of git filter-repo and related changes? HOT 1
- Callback that gives both filename and blob
- Breaking change in git 2.43 or 2.44 HOT 2
- lint-history: --refs argument not working at all HOT 1
- Test suite succedes with Python 3.11 but has multiple failures with Python 3.12 HOT 7
- Turns out my assumption was wrong: `git lfs migrate export --everything --include="*"` does rewrite the whole history, across all branches, reinjecting all the large files' consecutive versions ([see here](https://github.com/git-lfs/git-lfs/issues/910#issuecomment-551566315)). Awesome! HOT 1
- Support for SHA256
- FR: Filter into new repo HOT 1
- clean-ignore of filter-repo-demos does not handle utf-8 characters HOT 1
- Trouble with Lock File HOT 1
- Really-43e2c HOT 2
- > main HOT 1
- Renaming path and then renaming it back to the original name deletes path rather than renaming it HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from git-filter-repo.