# list all the configured values
git config --list# Set username & email for git globally
git config --global user.name "Progressive Programmer"
git config --global user.email "progressive@gmail.com"# Set committer name & email for git
git config --global committer.name "Programmer"
git config --global committer.email "programmer@gmail.com"
创建一个新的存储库
# Create a new folder and initialize git repo
git init name
# Clone a remote repo in your local system
git clone url_of_repo
将文件/文件夹添加到暂存区
# Adds mentioned file/folder to the staging area
git add hello.py
# Adds all the files and folders in the current directory
git add .
# Opens the file and let you choose the portion to be added for next commit
git add -p hello.py
提交更改
# Commit a snapshot of staged changes
git commit
# Commit a snapshot of changes in the working directory.
git commit -a# Shortcut for commit with a commit message
git commit -m "commit message"
Git 分支
# Create a new branch
git branch crazy_experiment
# List all branches
git branch
# List both remote and local branches
git branch -a# List only branches that match the pattern mentioned
git branch --list 'pattern here'
切换 | 删除 | 重命名分支
# Move to different branches
git checkout branch_name
git switch branch_name
# Shortcut to create a new branch and switch to the branch
git switch -cnew_branch_name
git checkout -bnew_branch_name
# Delete the given branch
git branch -dtrash
# Force delete the given branch
git branch -Dtrash
# Rename the current branch
git branch -mnew_name
合并分支
# Merge given branch name with the working branch
git merge branch_name
# Continue merger after conflict resolution
git merge --continue
检查状态
# Shows the working tree status
git status
# Shows status of working tree in a short format
git status --short# Shows status of branch in a short format
git status --branch
远程存储库
# Lists remote repo name and url(fetch/push)
git remote -v# Add a remote repository with local repository
git remote add origin url_remote_repo
# Remove the remote repo with given name
git remote remove repo_name
# Rename the remote repo with given name
git remote rename old_name new_name
# Updates remote repo with local repo
git push