eecs280staff / tutorials

Tools and tutorials
https://eecs280staff.github.io/tutorials/
Other
5 stars 4 forks source link

GitHub Authentication #100

Closed TheOmid closed 1 year ago

TheOmid commented 1 year ago

Add GitHub Authentication section that walks through SSH Keys and GitHub Personal Access Tokens.

A couple of notes:

  1. Maybe we should just include a tutorial for downloading Git Credential Manager which takes care of all of it. It makes it much easier for students IMO.
  2. I think we should tell students to set an expiration date for their password. Having no expiration is a security risk. The only concern is that it can create a hassle for them to renew it. 90 days is also not enough. Ideally, we can ask students to set it as the last day of classes, but for now, I have put it down January 1st of next year. My main concern here is that how to update your access token is confusing. I think I should write it as a subsection.
  3. I think we should update the whole tutorial and center it around pushing project 2 to GitHub. Since this is out of the scope of this issue, I did not change other areas besides connecting to remote repo. Student's might get confused that the rest of the project is for Justin's EECS 485 project 1.

I think the MacOS pitfall and expiration note can be more clear. LMK if you have suggestions for that I personally use SSH. I tested this with a new GitHub account, and the tutorial worked.

Closes #97

github-actions[bot] commented 1 year ago

The spec from this PR is available at https://preview.sesh.rs/previews/eecs280staff/tutorials/100/.

(Available until Sun Feb 26 2023.)

TheOmid commented 1 year ago

The edits look good; thanks for making it more readable!

I have a couple of comments:

1- Since SSH is not super beginner friendly, that's why we decided to lean towards it. I think it would be good to make an SSH section instead of relying on GitHub (although in my opinion, it does a great job students told me they were confused). I can work on this!

2- You have removed hooks and delete_repo using a personal access token in the personal access token. Can they delete their repository without the token? (Is it to delete with an API call?). If the other two are API specific, we can ignore it, but it was also in GitHub's tutorial. Hence I included it.

TheOmid commented 1 year ago

Only thing I forgot to mention is that here:

"MacOS Pitfall: If you are not prompted for your username and password, your credentials may be cached on your computer. Clear your credentials from Keychain Access."

Do we probably want to say this if to Personal Access Token?

Also, maybe mention that with SSH you won't see a prompt for entering a password? I don't see SSH being mentioned as password-less authentication. @awdeorio @anishnya

awdeorio commented 1 year ago

Good catch. Could you make a separate PR with these proposed changes @TheOmid ?

TheOmid commented 1 year ago

Will do!