git init >> initiates git in the current directory git clone
>> creates a git repo from given address (get the address from your git-server) === git add file.txt >> adds(stages) file.txt to the git git add * >> adds(stages) all new modifications, deletions, creations to the git git reset file.txt >> Removes file.txt from the stage git rm file.txt >> removes file.txt both from git and file system git status >> shows the modifications and stuff that are not staged yet === git branch >> shows all the branches (current branch is shown with a star) git branch my-branch >> creates my-branch git branch -d my-branch >> deletes my-branch git checkout my-bracnch >> switches to my-branch git merge my-branch >> merges my-branch to current branch === git remote >> shows the remotes git remote -v >> shows the remote for pull and push git remote add my-remote
>> creates a remote (get the address from your git-server) === git log >> shows the log of commits git commit -m 'msg' >> commit changes with a msg git push my-remote my-branch >> pushes the commits to the my-remote in my-branch (does not push the tags) === git tag >> shows all the tags git tag -a v1.0 -m 'msg' >> creates an annotated tag git show v1.0 >> shows the description of version-1.0 tag git tag --delete v1.0 >> deletes the tag in local directory git push --delete my-remote v1.0 >> deletes the tag in my-remote (be carefore to not delete a branch) git push my-remote my-branch v1.0 >> push v1.0 tag to my-remote in my-branch git fetch --tags >> pulls the tags from remote === git pull my-remote my-branch >> pulls and tries to merge my-branch from my-remote to the current branch === git stash >> stashes the staged and unstaged changes (git status will be clean after it) git stash -u >> stash everything including new untracked files (but not .gitignore) git stash save 'msg' >> stash with a msg git stash list >> list all stashes git stash pop >> delete the recent stash and applies it git stash stach@{2} >> delete the {2} stash and applies it git stash show >> shows the description of stash git stash apply >> keep the stash and applies it to the git git stash branch my-branch stash@{1} >> creates a branch from your stash git stash drop stash@{1} >> deletes the {1} stash git stash clear >> clears all the stash === .gitignore >> is a file including names of stuff that you don't want to be staged or tracked. >> You usually keep your local files like database, media, and etc here. >> You can find good resources online about ignoring specific files in your project files. >> .gitignore is also get ignored .git >> is a hiiden directory in repo directory including git files. It is created after "git init".