Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Fixes #7596 when PR #103 is merged.
Describe the pull request
It seems there's an issue with the handling of special characters in wiki names, where Git internally escapes them. This creates a mismatch between the escaped filenames and the actual filenames, making it challenging to delete files accurately. As a result, the deletion process is not functioning as expected.
Including the
-z
option in the git ls-tree command results in filenames being presented without quotes.Another pull request has been initiated to handle this specific case. Please check git-module PR #103 for details.
For example, I have created below test wikis:
![Test Wikis](https://private-user-images.githubusercontent.com/25850690/300914120-34ff266b-a4f4-4117-8208-461dc3624e56.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MjAxMDI1NjEsIm5iZiI6MTcyMDEwMjI2MSwicGF0aCI6Ii8yNTg1MDY5MC8zMDA5MTQxMjAtMzRmZjI2NmItYTRmNC00MTE3LTgyMDgtNDYxZGMzNjI0ZTU2LnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNDA3MDQlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjQwNzA0VDE0MTEwMVomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPWQ4ZmEwNGVlZDI4OTJhYjlhOTAxNTI5ZGIzYzIyZmQwNTJjMTViOTE3NzMzYmVjYTViNzkwNWIwMGM5MGRiZmMmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0JmFjdG9yX2lkPTAma2V5X2lkPTAmcmVwb19pZD0wIn0.utUOqo2Nhkhv3aZhVlu0Q145wggiXM31mQuQoFAalRU)
![Test Wikis with z](https://private-user-images.githubusercontent.com/25850690/300914190-534e2d4a-ada5-4e4c-919e-d4c1ebdc4e53.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MjAxMDI1NjEsIm5iZiI6MTcyMDEwMjI2MSwicGF0aCI6Ii8yNTg1MDY5MC8zMDA5MTQxOTAtNTM0ZTJkNGEtYWRhNS00ZTRjLTkxOWUtZDRjMWViZGM0ZTUzLnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNDA3MDQlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjQwNzA0VDE0MTEwMVomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPTFmNDJlZjJmYWNhNjE5Y2EzZDY5NjY0NDM4YjhhYjFjYmM4MDIwY2JhOTFmZDU1NGEzZjkxOTllYWU2MDE1YTEmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0JmFjdG9yX2lkPTAma2V5X2lkPTAmcmVwb19pZD0wIn0.6Q4d2TQF7-2YwLbisxwdazp-MDpaHzy1F_kbNQXm9N8)
See the differences of using
-z
:Using
-z
the filename is output verbatim.Link to the issue: #7596
Checklist
Test plan
Make sure gogs/git-module has PR #103 changes. And gogs/gogs has this PR changes.
Build(
go build -o gogs
) and start the gogs web server(./gogs web
).Create wiki pages(with characters like
"
,\
etc,.) and test the fix.Delete.Wiki.Pages.mov