diff --git a/src/homework/hw4/index.md b/src/homework/hw4/index.md index 51f030f41d66b8a6469f9ec00afbff0234be5dd6..be9ca9d6cb790dcda0200fa50733f7170c73f464 100644 --- a/src/homework/hw4/index.md +++ b/src/homework/hw4/index.md @@ -26,25 +26,27 @@ links to several resources that you may find helpful. 1. **Log on to GitLab** - All students in CSE 391 have been given access to the CSE GitLab service for this quarter. If you are a CSE major, you should log on using your CSENetID, otherwise use your UWNetID. Log on to CSE GitLab by going here: [https://gitlab.cs.washington.edu/](https://gitlab.cs.washington.edu/) -2. **Add one or more ssh keys to your account** – In order to talk to the GitLab service from your computer or attu you -will want to create ssh keys on those computers and copy the public ssh for each computer into your GitLab account. -**We suggest you do not add a password**, even though the documentation says it is best practice. We suggest you accept the default location for the key and that you do not add a password, **meaning you can just hit return three times when generating the key**. +2. **Add one or more SSH keys to your account** – In order to talk to the GitLab service from your computer or attu you +will want to create SSH keys on those computers and copy the public SSH key for each computer into your GitLab account. + + * Guide to generate SSH keys: [https://gitlab.cs.washington.edu/help/user/ssh.md](https://gitlab.cs.washington.edu/help/user/ssh.md). + * The process is also described briefly in the [lecture slides](https://docs.google.com/presentation/d/1XFJuWRT4GVhPFUUF9ocab1yhjzGpQXAHVQGp-tt1nVM/edit#slide=id.g7fd273c54a_0_101). + + !!! caution + You need a new SSH key for every machine. `attu` is a separate machine from your local machine! If you created a SSH key on your local machine for a previous course but you are working on `attu`, you need to log on to `attu` and create a new SSH key on `attu`. + + **We suggest you do not add a password**, even though the documentation says it is best practice. We suggest you accept the default location for +the key and that you do not add a password, **meaning you can just hit return three times when generating the key**. Once you have created a key on your local machine, next, on GitLab, click on the down arrow next to the circle at the top right of the screen and select “Settingsâ€. Next, select “SSH Keys†from the left-hand side of the page. Or you may -go directly to the URL: [https://gitlab.cs.washington.edu/-/profile/keys](https://gitlab.cs.washington.edu/-/profile/keys). On your local machine, type: `cat -~/.ssh/id_rsa.pub` to see your key. +go directly to the URL: [https://gitlab.cs.washington.edu/-/profile/keys](https://gitlab.cs.washington.edu/-/profile/keys). On your local machine, type: `cat ~/.ssh/id_rsa.pub` to see your key. Copy and paste the key into the provided text box on GitLab. You can give it a Title like “attu†or “CSE VM†to identify which computer the key goes with. Click the green button labeled “Add Keyâ€. - For more background information about this process: - - * Read more about this here: [https://gitlab.cs.washington.edu/help/user/ssh.md](https://gitlab.cs.washington.edu/help/user/ssh.md). - * The process is also described briefly in the [lecture slides](https://docs.google.com/presentation/d/1XFJuWRT4GVhPFUUF9ocab1yhjzGpQXAHVQGp-tt1nVM/edit#slide=id.g7fd273c54a_0_101). - -3. **Configure Git** – Whether you are working on attu or the CSE VM, you will want to configure a few things before you +1. **Configure Git** – Whether you are working on attu or the CSE VM, you will want to configure a few things before you get started with Git. [This slide from lecture](https://docs.google.com/presentation/d/1XFJuWRT4GVhPFUUF9ocab1yhjzGpQXAHVQGp-tt1nVM/edit#slide=id.g9ead46bc84_0_5) gives a brief summary, but basically type these things at your terminal prompt: * Set up your user information. @@ -76,7 +78,7 @@ get started with Git. [This slide from lecture](https://docs.google.com/presenta git config --global push.default simple ``` -4. **Log in and download the homework4.sh file** – For this assignment, you will turn in a .sh file as usual, you will turn this into gradescope. Download this file to your system: +1. **Log in and download the homework4.sh file** – For this assignment, you will turn in a .sh file as usual, you will turn this into gradescope. Download this file to your system: ``` wget {{ '/homework/hw4/homework4.sh' | url }} ``` @@ -113,6 +115,12 @@ git commit -m "add README" git push -u origin main ``` +!!! caution + Git should **not** ask you for a password when running `git clone`. If you are asked for a password, check that your SSH key is setup properly. + +!!! info + `git switch` might not exist on older versions of Git (e.g. on `vergil`). In that case, instead of `git switch -c main`, use `git checkout -b main`. + After executing these commands, the directory you are in (which should be named after your project) is your “working directory†in Git terminology. Your working directory is where you will edit and create files to add and commit to your local repo. At this point if you do an `ls –a` in your working directory you @@ -193,7 +201,7 @@ Enter your answers inside of each function in `homework4.sh`. ### **print_link:** This is just a function that tells the autograder where to clone your git repository from. -Make sure to use the link that starts with `https://`. +Put your repository URL from the address bar at the top of your browser (**not "Clone with HTTPS"**), which starts with `https://` and **does not end with `.git`**. Alternatively, use the link from "Clone with HTTPS," but remove the `.git` ending. So, it should look something like this: diff --git a/src/working_at_home.md b/src/working_at_home.md index d3a18ff085f665c3c8ce3c107d44296057a14c6e..1831571ff59ea651f0f3b25bb3b025acf02b92cd 100644 --- a/src/working_at_home.md +++ b/src/working_at_home.md @@ -10,7 +10,7 @@ You will need to gain access to a Linux or other Unix environment for working on * students with CSE accounts may remotely log in to the CSE department's `attu.cs.washington.edu` server using SSH * [students taking CSE 351](https://courses.cs.washington.edu/courses/cse351/23sp/linux/) have access to `cancun.cs.washington.edu` or `calgary.cs.washington.edu` * students with EE accounts may [use their departmental servers](https://www.ee.washington.edu/computing/faq/labs/linuxlab.html) - * all UW students may use [UW Linux servers](https://itconnect.uw.edu/service/linux-shell-environment/) (e.g. `vergil`). Here is [how to activate your account](https://itconnect.uw.edu/connect/web-publishing/shared-hosting/web-development-environments/vergil-u-washington-edu/). + * all UW students may use [UW Linux servers](https://itconnect.uw.edu/service/linux-shell-environment/) (e.g. `vergil.u.washington.edu`). Here is [how to activate your account](https://itconnect.uw.edu/connect/web-publishing/shared-hosting/web-development-environments/vergil-u-washington-edu/). * students with CSE accounts may go to an Allen Center lab (e.g. 002, 003, 006) or a Gates Center lab (e.g. 110, 124, 129) and log in to a Linux box there * Install the [CSE departmental Virtual Machine (VM)](https://www.cs.washington.edu/lab/software/linuxhomevm) image on a computer of your own * All students have access to this image - although currently students with a Mac with a M1 or M2 chip may not be able to run the VM.