Git/Github and the Terminal
Click here to access walkthrough recording
Setup Instructions
- Create a folder in your Desktop or any other designated location on your machine; you can name it
git-github-and-terminal
- Initialize a
git
repo inside that folder with the commandgit init
- Create a repository on
git.generalassemb.ly
- Your Github Enterprise Account - Add your remote from
github
to your local repo with the following command:git remote add origin https://www.git.generalassemb.ly/YOURUSERNAME/git-github-and-terminal.git
- Create a file called
README.md
inside yourgit-github-and-terminal
folder - Write your answers to the questions below in your
README.md
file - Commit your work at each point when directed (remember to
git add .
and thengit commit -m "your commit message"
)
Git & Github - Questions
Refer back to the notes from today and/or use the internet and google-fu
to find the answers to the questions below:
Answer the following questions
- What command do you use to setup a git repository inside of your folder?
- What command do you use to ask git to start tracking a file?
- What command do you use to ask git to move your file from the staging area to the repository?
Terminal Practice
Episode X: A New Terminal
A long time ago in a Unix environment far, far away, young Jedi padawans who knew only of desktop software were seduced by the dark side of the Force to enter… The Terminal.
Follow the instructions below using all the console commands introduced in Fundamentals, class, or that you find on your own.
Setup
-
Open the Terminal app
-
Inside your homework folder, git-github-and-terminal, create another folder called:
galaxy-far-far-away
-
Then create a file inside
galaxy-far-far-away
calledcommands.txt
-
Paste the answer to each numbered question (i.e. the command(s) that accomplished the task) in
commands.txt
once you get it to work -
Remember, you can learn about any Unix command by typing
man
and then the command name. E.g.,man ls
. TypeQ
to get out of the Manual page ("man page") viewer
Part I: Set the Scene
Complete all work inside the galaxy-far-far-away
folder.
-
Create a directory called
death_star
, and make the following files inside of it:darth_vader.txt
,princess_leia.txt
,storm_trooper.txt
-
In
galaxy-far-far-away
, make a directory namedtatooine
and create the following files in it:luke.txt
,ben_kenobi.txt
-
Inside of
tatooine
make a directory calledmillenium_falcon
, and in it create:han_solo.txt
,chewbaca.txt
Part II: mv
- rename
You can rename a file using the mv
command.
- Rename
ben_kenobi.txt
toobi_wan.txt
Part II: cp
- copy
You can copy a file from one location to another using the cp
command. (man cp
for more info)
- Directories can be sibling (parrell to each other) or can be parents (the folder that contains the folder you are in)
- Copy
storm_trooper.txt
fromdeath_star
totatooine
Part IV: mv
- move
You can use the mv
command to move files from one location to another. mv
can be used for renaming, moving, or both. Run man mv
to see the options—remember hit the Q
key to get out of the manual page viewer.
-
Move
luke.txt
andobi_wan.txt
to themillenium_falcon
-
Move
millenium_falcon
out oftatooine
and intogalaxy-far-far-away
-
Move
millenium_falcon
intodeath_star
-
Move
princess_leia.txt
into themillenium_falcon
Part V: rm
- remove
BE CAREFUL WITH rm
!!! THERE IS NO "TRASH" IN THE UNIX CLI. WHEN YOU DELETE SOMETHING IT IS GONE FOREVER!!!
You can use rm
to delete a file.
- Delete
obi_wan.txt
.
Part VI: all together
-
In
galaxy-far-far-away
, make a directory calledyavin_4
-
Move the
millenium_falcon
out of thedeath_star
and intoyavin_4
-
Make a directory in
yavin_4
calledx_wing
-
Move
princess_leia.txt
toyavin_4
andluke.txt
tox_wing
-
Move the
millenium_falcon
andx_wing
out ofyavin_4
and intogalaxy-far-far-away
-
In
death_star
, create directories fortie_fighter_1
,tie_fighter_2
andtie_fighter_3
-
Move
darth_vader.txt
intotie_fighter_1
-
Make a copy of
storm_trooper.txt
in bothtie_fighter_2
andtie_fighter_3
-
Move all of the
tie_fighters
out of thedeath_star
and intogalaxy-far-far-away
Part VII: rm -r
: remove directories and everything they contain
BE CAREFUL WITH rm -r
THERE IS NO TRASH CAN IN THE UNIX CLI. WHEN YOU DELETE SOMETHING IT IS GONE FOREVER
Before you hit enter, make sure are deleting the right thing, or you could accidentally delete the contents of your computer (it has happened).
This command will not typically ask you if you "really want to delete." It will just delete.
- Remove
tie_fighter_2
andtie_fighter_3
Part VIII:
-
Touch a file in
x_wing
calledthe_force.txt
-
Destroy the
death_star
and anyone inside of it -
Return
x_wing
and themillenium_falcon
toyavin_4
Celebrate. You've reached the end of this homework :)
Commit and push your updated code:
"Add" your changes (prepare them to be "committed"):
$ git add -A
"Commit" your changes—any time you make a commit, you can always restore the files in the repo to that point:
$ git commit -m "Completed homework"
"Push" your commits to github:
$ git push origin master