martijnvanbrummelen / nwipe

nwipe secure disk eraser
GNU General Public License v2.0
682 stars 77 forks source link

0.35 Release scheduled for late Sunday 5th Nov. #522

Closed PartialVolume closed 9 months ago

PartialVolume commented 9 months ago

I'm planning on re-releasing 0.35 late tomorrow unless anyone reports any further build issues on their distro.

I've tested on Ubuntu 22.04 and Debian Sid. @xambroz has tested on RHEL 7/8/9. @ggruber is running on Debian 12. According to repology AUR (Arch) built ok on the prior release.

Anybody else that wants to compile the latest master version on their distro before Sunday night and let us know whether nwipe builds without any fatal errors are most welcome to comment below. Thanks.

PartialVolume commented 9 months ago

If everybody is happy, I'm going to release v0.35 tonight. I don't want to make any further changes before tonight unless they are related to specific build issues on a distro.

@ggruber As soon as I've released 0.35 I need to spent a week or two building a new version of ShredOS with the latest version of buildroot and the latest kernel plus 0.35 and various extra features I need to make to ShredOS. Actually better make that a month.

In the meantime, please feel free to submit patches or new code to nwipe but I would definitely recommend you submit your PR from a branch of your master. The reason being for me is that it will keep code changes focused on a specific change or feature. i.e it avoids mixing unrelated commits in the same PR. It makes it easier for you as you can work on unrelated patches or features in different parts of the code and then submit multiple PR's. This is important because if I'm working on ShredOS I may not respond as promptly as I have been doing and it then allows you to submit a PR on a branch then create another branch of the master and work on another part of the code while you are waiting for me to commit the PR. Much like @xambroz did with his multiple patches submitted from different branches.

For anybody that wants to submit pull requests to nwipe ,the git commands to do this are really easy. This is what I do..

Assuming you have cloned the master onto you PC with .. (use your own fork not ggruber's ! git clone https://github.com/ggruber/nwipe.git

while in ../nwipe directory makesure the master branch is selected (*) Important because the branch you are about to create will be created from the selected branch, so make sure it's the master and not some other branch you have been working on.

$ git branch add_user_to_log

Create the branch off the master branch

$git checkout -b patch1 Switched to a new branch 'patch1'

Check you are on the new branch 'patch1'

$git branch add_user_to_log master

Make the changes to the code as required. Run git status to check which files were changed as you need to add these files with the git add command before you commit the changes.

$git status On branch patch1 Changes not staged for commit: (use "git add ..." to update what will be committed) (use "git restore ..." to discard changes in working directory) modified: src/create_pdf.c << This will be in red

Add the changed files

$git add src/create_pdf.c

Run git status again to check modified file has changed from red to green

$git status On branch patch1 Changes to be committed: (use "git restore --staged ..." to unstage) modified: src/create_pdf.c << This will be in green.

Commit the changes

$git commit -m "Fixed a typo" [patch1 05fa266] Fixed a typo 1 file changed, 1 insertion(+), 1 deletion(-)

Push to your own nwipe fork on github

$git push origin patch1

Go to your own Github nwipe page and after the checks have completed do a PR from the patch1 branch

Once I have committed it, you can delete the branch on your local copy on your PC and the branch in your forked copy of nwipe on github. You must switch to the master branch before you can delete some other branch.

$ git checkout master Switched to branch 'master' Your branch is up to date with 'origin/master'.

$ git branch add_user_to_log

$ git branch -d patch1 error: The branch 'patch1' is not fully merged. If you are sure you want to delete it, run 'git branch -D patch1'.

$ git branch -D patch1 Deleted branch patch1 (was 05fa266).

You are already on the master branch, git branch to confirm that. You now need to update your local master branch on you PC from https://github.com/martijnvanbrummelen/nwipe

$git pull upstream master

Finally you need to push you updated master branch to you master fork at Github.

$ git push

Your nwipe fork on GitHub should now be up to date with nwipe at https://github.com/martijnvanbrummelen/nwipe

I use KDE's Kdevelop IDE and some of this process is automated except for the git push & pull commands which I always do from the command line.

One of my favourite git commands is

$git commit --amend

For those times you forgot to run make format after making changes. So instead of having a commit that says "Darn I forgot to format !" The git commit --amend command puts the changes in to the previous commit and then nobody is any the wiser :-)

How it can go wrong:

upstream & origin have to be defined correctly, these are URL's that point to https://github.com/martijnvanbrummelen/nwipe and your local fork https://github.com/ggruber/nwipe etc.

You can find and edit this definitions in nwipe/.git/config on your PC.

You should also create a public/private key for signing commits and pushing to your forked nwipe.

ggruber commented 9 months ago

@PartialVolume : excellent explanation, thank you so much will try to work this way