Reputation: 935
When I do a Pull Request on GitHub (against master branch), can we ignore some file changes, like
Upvotes: 66
Views: 119835
Reputation: 797
My scenario was: I am using CI/CD in AWS and the pipeline reads from buildspec.yml
. In the dev pipeline I need a specific Cloudfront id written in buildspec.yml
and in the main pipeline the Cloudfront id changes. My steps to prevent changing this file in a Github PR were:
buildspec.yml
filebuildspec.yml
file in the .gitignore
filebuildspec.yml
from the Github UI directly. Set the values corresponding from each branch (dev and main)This way the .gitignore
ignores the different versions of buildspec.yml
in dev and main. In every PR, I get the changes of all files but the buildspec.yml
does not appear. It is worth mentioning that if I make a change in the buildspec.yml
file, git will recognize that change and make it commitable (I am not sure why).
I hope this helps anyone :)
Upvotes: 2
Reputation: 161
As mentioned in https://stackoverflow.com/a/28703636/12138397, it is not possible to exclude files in a Pull-Request, and the alternatives which have been proposed also work.
But there is a simpler solution to it. Here I am considering staging as my target and dev as my source
root
|-- src
| -- app.py
|-- .gitignore
|-- settings.py
|-- requirements.txt
Let's say, I would want to ignore the settings.py file from being merged
git checkout staging
git checkout dev src/
This will only merge the files changed inside src/ folder
NOTE: You can also do it selectively for each file.
Then push to remote repository
git push origin staging
But this solution is useful only if the files to be excluded is small.
Upvotes: 16
Reputation: 5333
Create branch with last commit you agree with:
git branch my-branch <sha>
git checkout my-branch
Select commits you want to pull request as patches:
git format-patch -10 <sha> --stdout > 0001-last-10-commits.patch
Apply patches:
git am < 0001-last-10-commits.patch
Your commits will be as they was. You can git push -u origin my-branch
immediately.
Upvotes: 2
Reputation: 785
You can't ignore some files from a pull request selectively. Two workarounds for this can be -
First -
Second -
Any of this method will work. Which will be easier depends upon how many files are to be included / excluded.
Upvotes: 51