git的基本使用

一、克隆项目

git clone 地址

add (上传暂存区)

git add . : 添加当前目录的所有文件到暂存区
git add [dir] : 添加指定目录到暂存区,包括子目录
git add [file1] :添加指定文件到暂存区

commit (上传本地仓库)

git commit -m [message] :提交暂存区到本地仓库,message代表说明信息
git commit [file1] -m [message]:提交暂存区的指定文件到本地仓库
git commit --amend -m [message]:使用一次新的commit,替代上一次提交

branch (展示分支,切换分支,创建分支,删除分支)

git branch:列出所有本地分支
git branch -r:列出所有远程分支
git branch -a:列出所有本地分支和远程分支
git branch [branch-name]:新建一个分支,但依然停留在当前分支
git checkout -b [branch-name]:新建一个分支,并切换到该分支
git branch --track [branch][remote-branch]:新建一个分支,与指定的远程分支建立追踪关系
git checkout [branch-name]:切换到指定分支,并更新工作区
git branch -d [branch-name]:删除分支
git push origin --delete [branch-name]:删除远程分支

merge (合并分支)

git fetch [remote]:merge之前先拉一下远程仓库最新代码
git merge [branch]:合并指定分支到当前分支

rebase(合并分支)

rebase又称为衍合,是合并的另外一种选择。

rebase与merge的区别

在master执行git merge test,然后会得到如下结果请添加图片描述
在master执行git rebase test,然后得到如下结果:
请添加图片描述

reset(把当前分支指向另一个位置)

git reset —soft [commit]:只改变提交点,暂存区和工作目录的内容都不改变
git reset —mixed [commit]:改变提交点,同时改变暂存区的内容
git reset —hard [commit]:暂存区、工作区的内容都会被修改到与提交点完全一致的状态
git reset --hard HEAD:让工作区回到上次提交时的状态

revert(用一个新提交来消除一个历史提交所做的任何修改)

git的基本使用_第1张图片

revert与reset的区别

git的基本使用_第2张图片

push(从本地仓库上传到远程仓库)

git push [remote][branch]:上传本地指定分支到远程仓库
git push [remote] --force:强行推送当前分支到远程仓库,即使有冲突
git push [remote] --all:推送所有分支到远程仓库

其他命令

git status:显示有变更的文件
git log:显示当前分支的版本历史
git diff:显示暂存区和工作区的差异
git diff HEAD:显示工作区与当前分支最新commit之间的差异
git cherry-pick [commit]:选择一个commit,合并进当前分支

你可能感兴趣的:(git,github)