GitLab CI
Basic Git commands
Here is a list of some basic Git commands to get you going with Git.
<tbody> </tbody>Git task | Notes | Git commands |
---|---|---|
<a rel="nofollow" class="external-link" href="https://www.atlassian.com/git/tutorials/setting-up-a-repository/git-config">Tell Git who you are</a> | Configure the author name and email address to be used with your commits. Note that Git <a rel="nofollow" class="external-link" href="http://stackoverflow.com/questions/26159274/is-it-possible-to-have-a-trailing-period-in-user-name-in-git/26219423#26219423">strips some characters</a> (for example trailing periods) from |
git config --global user.name "Sam Smith"
|
<a rel="nofollow" class="external-link" href="https://www.atlassian.com/git/tutorials/setting-up-a-repository/git-init">Create a new local repository</a> | git init |
|
<a rel="nofollow" class="external-link" href="https://www.atlassian.com/git/tutorials/setting-up-a-repository/git-clone">Check out a repository</a> | Create a working copy of a local repository: | git clone /path/to/repository |
For a remote server, use: | git clone username@host:/path/to/repository |
|
<a rel="nofollow" class="external-link" href="https://www.atlassian.com/git/tutorials/saving-changes#git-add">Add files</a> | Add one or more files to staging (index): | git add <filename> git add * |
<a rel="nofollow" class="external-link" href="https://www.atlassian.com/git/tutorials/saving-changes#git-commit">Commit</a> | Commit changes to head (but not yet to the remote repository): | git commit -m "Commit message" |
Commit any files you've added with git add , and also commit any files you've changed since then: |
git commit -a |
|
<a rel="nofollow" class="external-link" href="https://www.atlassian.com/git/tutorials/syncing#git-push">Push</a> | Send changes to the master branch of your remote repository: | git push origin master |
<a rel="nofollow" class="external-link" href="https://www.atlassian.com/git/tutorials/inspecting-a-repository#git-status">Status</a> | List the files you've changed and those you still need to add or commit: | git status |
<a rel="nofollow" class="external-link" href="https://www.atlassian.com/git/tutorials/syncing#git-remote">Connect to a remote repository</a> | If you haven't connected your local repository to a remote server, add the server to be able to push to it: | git remote add origin <server> |
List all currently configured remote repositories: | git remote -v |
|
<a rel="nofollow" class="external-link" href="https://www.atlassian.com/git/tutorials/using-branches">Branches</a> | Create a new branch and switch to it: | git checkout -b <branchname> |
Switch from one branch to another: | git checkout <branchname> |
|
List all the branches in your repo, and also tell you what branch you're currently in: | git branch |
|
Delete the feature branch: | git branch -d <branchname> |
|
Push the branch to your remote repository, so others can use it: | git push origin <branchname> |
|
Push all branches to your remote repository: | git push --all origin |
|
Delete a branch on your remote repository: | git push origin :<branchname> |
|
<a rel="nofollow" class="external-link" href="https://www.atlassian.com/git/tutorials/syncing">Update from the remote repository</a> | Fetch and merge changes on the remote server to your working directory: | git pull |
To merge a different branch into your active branch: | git merge <branchname> |
|
View all the merge conflicts: View the conflicts against the base file: Preview changes, before merging: |
git diff
git diff <sourcebranch> <targetbranch> |
|
After you have manually resolved any conflicts, you mark the changed file: | git add <filename> |
|
Tags | You can use tagging to mark a significant changeset, such as a release: | git tag 1.0.0 <commitID> |
CommitId is the leading characters of the changeset ID, up to 10, but must be unique. Get the ID using: | git log |
|
Push all tags to remote repository: | git push --tags origin |
|
<a rel="nofollow" class="external-link" href="https://www.atlassian.com/git/tutorials/undoing-changes">Undo local changes</a> | If you mess up, you can replace the changes in your working tree with the last content in head: Changes already added to the index, as well as new files, will be kept. |
git checkout -- <filename> |
Instead, to drop all your local changes and commits, fetch the latest history from the server and point your local master branch at it, do this: | git fetch origin git reset --hard origin/master |
|
Search | Search the working directory for foo() : |
git grep "foo()" |