Say you cloned a repository, then you created a new branch and did several commits on this branch ( without creating new branches or pushing to any remotes ). In some of these commits you introduced (committed) a file fileA by a mistake. Now, how can you remove that file from the history, but not from the local file system (i.e. keep the file as untracked)? Also assume that the name of the parent branch is not known (in order to completely automate the process).
Delete a file from from all commits up to first branch point but not delete it from local file system
95 Views Asked by Håkon Hægland At
1
There are 1 best solutions below
Related Questions in GIT
- problem to push files on a repository git
- diff3 output in git conflict style, including mergeable hunks
- Git Not In Sync with Local Branch
- Setting up the version control of .dotfiles while the .config is connected to a forked repo
- How to fix overriding the main branch in Git?
- I can't add text to "Message" in VS Code when committing to Git
- How can i redirect pull request from main branch to another branch
- Xcode commits (possibly outside of any branch) disappeared, how to get them back?
- Git/TortoiseGit : how to apply ONLY the changes from ONE commit from branch A, to branch B?
- How can I reintroduce username an password on git using fedora?
- GIT SKIP EMPTY DIRECTORIES
- Git smudge run once per checkout or per commit?
- I can't find ~/.profile or ~/.bashrc in C:/Users/<user>/.ssh folder
- Set environment variable during push for GitHub Actions
- Android WebRTC compile
Related Questions in GIT-FILTER-BRANCH
- Rewrite one line in one file in entire git history using git filter-repo
- RPC failed; curl 92 HTTP/2 stream 7 was not closed cleanly: CANCEL (err 8 )
- git replace broken submodule reference throughout entire commit history with correct submodule reference
- Undo changes to the main branch
- How to add a new initial version of a tracked file in a separate commit?
- Edit author/committer of multiple commits based on commit message
- Git: Change authors through history
- How to delete old/historic Git objects which are no longer in HEAD?
- How can I download the list of all the branches which are in cloud bitbucket repository?
- How can one change the timestamp of an old commit in Git (Git filter-repo)?
- Why changed history (by filter-branch) get reverted when using fetch
- git filter-branch messed up my contribution graph (green squares on GitHub)
- How can I remove a Git submodule from all history?
- Truncate and migrate git repo
- How can I move changes to a file from one commit to another?
Trending Questions
- UIImageView Frame Doesn't Reflect Constraints
- Is it possible to use adb commands to click on a view by finding its ID?
- How to create a new web character symbol recognizable by html/javascript?
- Why isn't my CSS3 animation smooth in Google Chrome (but very smooth on other browsers)?
- Heap Gives Page Fault
- Connect ffmpeg to Visual Studio 2008
- Both Object- and ValueAnimator jumps when Duration is set above API LvL 24
- How to avoid default initialization of objects in std::vector?
- second argument of the command line arguments in a format other than char** argv or char* argv[]
- How to improve efficiency of algorithm which generates next lexicographic permutation?
- Navigating to the another actvity app getting crash in android
- How to read the particular message format in android and store in sqlite database?
- Resetting inventory status after order is cancelled
- Efficiently compute powers of X in SSE/AVX
- Insert into an external database using ajax and php : POST 500 (Internal Server Error)
Popular # Hahtags
Popular Questions
- How do I undo the most recent local commits in Git?
- How can I remove a specific item from an array in JavaScript?
- How do I delete a Git branch locally and remotely?
- Find all files containing a specific text (string) on Linux?
- How do I revert a Git repository to a previous commit?
- How do I create an HTML button that acts like a link?
- How do I check out a remote Git branch?
- How do I force "git pull" to overwrite local files?
- How do I list all files of a directory?
- How to check whether a string contains a substring in JavaScript?
- How do I redirect to another webpage?
- How can I iterate over rows in a Pandas DataFrame?
- How do I convert a String to an int in Java?
- Does Python have a string 'contains' substring method?
- How do I check if a string contains a specific word?
We here use git filter-branch to remove the file from the index. It is important that we only use
git filter-branchfor the commits up to the first branch point; if not, we may not be able to merge the branch back into the original parent, and we could also accidentally delete a file with the same name in the parent branch.A difficulty arises if we assume the name of the parent branch to be unknown. However, this can be resolved using
git branch --contains: