Git 常用基本命令
git clone url
开发的第一步就是 克隆远程仓库到本地;
git clone 相当于使用了 git init , git remote,git pull 这三个命令;
git branch
新建分支、查看分支、删除分支等等;
git branch 查看本地所有的分支;
git branch -r 查看所有远程的分支;
git branch -a 查看所有远程分支和本地分支;
git branch -D <分支名称> 删除本地分支;
git branch <分支名称> 新建一个分支,但是仍停留在原来分支;
git checkout -b 新分支名
在本地 创建开发分支,并切换到该分支下;
git checkout 分支名称 切换到该分支下
git status
展示工作区及暂存区域中不同状态的文件;
git add 文件
将内容从工作目录添加到暂存区;
git commit
所有通过 git add 暂存的文件提交到本地仓库;
git push
将本地仓库的记录提交到远程仓库;
push 是 把当前 branch 的位置(即它指向哪个 commit)上传到远端仓库,并把它的路径上的 commits 一并上传。
push 的时候,如果 当前分支是一个本地创建的分支,需要 指定远程仓库名和分支名,用 git push origin 分支名称 的格式,而不能只用 git push;或者可以通过 git config 修改 push.default 来改变 push 时的行为逻辑;
push 的时候之后上传当前分支,并不会上传 HEAD;远程仓库的 HEAD 是永远指向默认分支(即 master)的。
git remote -v
查看仓库地址
git log
查看提交历史/提交日志
git reflog
查看所有日志 ,包括 回退的日志, 切换分支 ;
git fetch
拉取所有远端的最新代码;
git pull
拉取远程仓库所有分支更新并合并到本地分支;
例如:git pull origin master:master 将远程master分支合并到当前本地master分支,冒号后面表示本地分支,一般我们都是直接 git pull;
pull 的内部操作其实是把远程仓库取到本地后(使用的是 fetch),再用一次 merge 来把远端仓库的新 commits 合并到本地, 相当于:
git pull = git fetch + git merge;
git merge
从目标 commit 和当前 commit (即 HEAD 所指向的 commit)分叉的位置起,把目标 commit 的路径上的所有 commit 的内容一并应用到当前 commit,然后自动生成一个新的 commit。
例如 当前处于 master 分支上,使用 git merge 分支名称,就是把 该分支 合并到 master 分支上;