初始化git仓库
git init
克隆git仓库
//克隆master主分支
git clone [url]
//克隆其他分支
git clone -b <name> [url] //.<name>为分支名称
git config 设置账号 邮箱
git config --global user.name "name"
git config --global user.email "email"
git config:作用域最小,值针对当前项目有效
git config --global:作用域中等,为登陆这台计算机的用户
git config --system:作用域最大,整台计算机,不管登陆那个帐号,不管哪个项目。
git pull 拉取并覆盖
git pull <远程主机名> <远程分支名>:<本地分支名>
git pull 其实就是 git fetch 和 git merge FETCH_HEAD 的简写。
git pull //如果当前分支没有指定远程仓库和分支,则默认拉取当前分支所对应的远程仓库和分支。
git pull origin master:brantest//将远程主机 origin 的 master 分支拉取过来,与本地的 brantest 分支合并
git pull origin master//如果远程分支是与当前分支合并,则冒号后面的部分可以省略
git add 将该文件添加到暂存区
git add [file1] [file2] ...//添加一个或多个文件到暂存区
git add [dir] //添加指定目录到暂存区
git add . //添加所有目录
git commit 将暂存区内容添加到本地仓库中
git commit -m [message] //提交暂存区到本地仓库中,[message] 可以是一些备注信息
git commit [file1] [file2] ... -m [message] //提交暂存区的指定文件到仓库区
git commit -a //加了-a,在 commit 的时候,能帮你省一步 git add ,但也只是对修改和删除文件有效, 新文件还是要 git add
git push 将本地的分支版本上传到远程并合并
git push <远程主机名> <本地分支名>:<远程分支名>
如果本地分支名与远程分支名相同,则可以省略冒号
git push origin master//将本地的 master 分支推送到 origin 主机的 master 分支
git push --force origin master//如果本地版本与远程版本有差异,但又要强制推送可以使用 --force 参数
git remote 操作远程仓库
git remote -v//显示所有远程仓库
git remote show [remote]//显示某个远程仓库的信息
git remote add [shortname] [url]//添加远程版本库,shortname 为本地的版本库
git remote rm name//删除远程仓库
git remote rename old_name new_name//修改仓库名
git branch分支操作
git branch//查看本地分支
git branch -r//查看远程分支
git branch -a//查看所有分支包括本地和远程
git branch <branchName> //创建新的本地分支,但是不会进行切换
git branch --set-upstream-to=origin/< remoteBranch > feature//将本地分支与远程分支建立连接。<remoteBranch >是远程分支名,feature是本地分支名。
git branch -d branchname / git branch -D branchname //删除分支,大写为强制删除,不能删除当前分支
git branch -d -r branchname //删除远程分支
git branch -m oldName newName / git branch -M old new //重命名分支,大写为强制重命名
git checkout
git checkout branchName//切换到新分支
git checkout -b branchName//新建分支并切换
git checkout -b 本地分支名 origin/远程分支名//从远程仓库里拉取一条本地不存在的分支
git stash
git stash //将所有未提交的修改(工作区和暂存区)保存至堆栈中,用于后续恢复当前工作目录