$ pwd # print working directory
$ cd newdir # change directory to newdir
$ cd # go to home directory
$ cd - # go "back"
$ cd .. # go "up"
$ ls # list files in current directory
$ ls somedir # list files in somedir
$ ls -A # show all files
$ ls -l # long listing
$ cat filename # print file in terminal
$ touch filename # create empty file
$ mkdir dirname # create empty directory
$ mv oldname newname # rename/move file
$ mv filename somedir # move file into directory
$ mv *.py somedir # move all .py files into somedir
$ rm filename # delete file
$ rmdir dirname # delete empty directory
$ rm -r dirname # delete directory and all files
$ rm -rf dirname # (DANGEROUS) force delete everything
$ cp oldname newname # copy file
$ cp -r oldname newname # copy directory and contents
$ cp *.py somedir # copy all .py files to somedir
$ python # run Python in interactive mode
$ python3 # run Python 3 (on some systems)
$ python3 myscript.py # run script with python3
$ chmod +x myscript.py # make executable (need shebang)
$ ./myscript.py # run myscript.py
Before we can use git commands we need to have a local repo and we need to cd
into the repo. We create a repo either by cloning from github or by using git init
.
Clone a repo:
$ git clone https://github.com/myusername/myrepo.git
$ cd myrepo # go into the directory
Create a new repo locally:
$ mkdir myrepo # make an empty directory
$ cd myrepo # go into the directory
$ git init # initialise repo (creates .git dir)
$ git status # show current state (e.g. files changed)
$ git log # show past commits
$ git diff # show unstaged changes
$ git diff script.py # show changes for script.py
$ git diff --cached # show staged changes
$ git add script.py # add script.py / stage changes
$ git commit -m "My commit message" # commit staged changes
$ git push # send commits to github
$ git pull # get commits from github
Make changes and push to github:
$ cd myrepo # cd to your local repo
$ git status # check working directory is clean
$ git pull # make sure up to date with github
<edit files, test changes are correct, etc>
$ git status # check which files have been changed
$ git diff # see what the changes are
<more editing after reviewing the diff?>
$ git add myfile1.py # stage changes ready for commit
$ git commit -m "Description of changes made"
$ git push # push the commit(s) to github