前言:
从Git的角度出发,存在三个区域:工作区、暂存区和存储库。
工作区:本地看到的工作目录。
暂存区:一般存放在.git目录下的index文件(.git/index)中,所以暂存区有时候也叫作索引(index);暂存区是一个临时保存修改文件的地方。
版本库:工作区有一个隐藏目录 .git,这个不算工作区,而是Git的版本库,版本库中存储了很多配置信息、日志信息和文件版本信息等。
全局配置:
当安装Git后,首先要做的就是配置所有本地存储库中使用的用户信息。每次Git提交都会使用该用户信息。
//设置用户名 git config --global user.name "name" //查看设置的 user.name git config user.name //设置邮箱 git config --global user.email "email" //查看设置的 email git config user.email //设置命令颜色 git config --global color.ui auto //通过上面的命令设置的信息会保存在本地的.gitconfig文件中。---- 查看所有配置 git config --list //设置别名 --为commit -m 创建一个别名 cm git config --global alias.cm "commit -m" //通过上面别名的设置,再提交暂存区文件时 git cm
分支操作:
//查看当前分支的状态 git status //列出所有远程分支 git branch -r //查看所有的本地分支和远程分支 git branch -a //创建分支 git checkout//加上 -b 就可以在创建新的分支之后,直接切换到新创建的分支上 git checkout -b //把本地分支推送到远程仓库,以在远程仓库添加这个分支。 git push -u origin //删除本地分支 -- 删除分支之前,要先切换到其他分支 git branch -d //强制删除本地分支 git branch -D //删除远程仓库分支 git push origin --delete //重命名分支 git branch -m //合并分支 如果想将A分支合并到B分支,就要先切换到B分支,然后执行命令:git merge A git merge
基础操作:
//暂存已修改的文件 git add//将所有未跟踪和修改的文件添加到暂存区 git add . //提交暂存 git commit -m "message" //如果上次提交暂存的message写错了,更改命令 git commit --amend -m //如果有一个新的文件修改,也想提交到上一个commit中,可以使用以下命令来保存相同的提交信息 git add . git commit --amend --no-edit
存储更改:
//假如我们正在开发迭代功能,但是还没开发完。这时有一个紧急的bug需要修复上线。 //这时就需要切换到一个hotfix分支去修复bug。这时对于开发了一部分的功能创建提交 //是没有逻辑意义的。可以使用以下任一命令来存储修改的内容。该命令会保存所有未提交的更改并 //恢复到上次提交时存储库的状态 git stash git stash push git stash push -m "" //当想再次继续开发此功能时,就可以使用以下命令检查所有存储 git stash list //取回所有的更改 -- apply和pop的区别:pop应用了stash中的更改并将其从stash中删除,apply不会 git stash apply git stash pop git stash apply stash@{N} git stash apply
远程操作:
//查看远程仓库 git remote //添加远程仓库 -- 将本地项目链接到远程仓库 git remote add <仓库名称(默认是origin)>//移除远程仓库 (接触本地仓库和远程仓库的关系) git remote rm origin //将远程指定分支拉取到本地指定分支上 git pull origin <远程分支名>:<本地分支名> //将远程指定分支拉取到本地当前分支上 git pull origin <远程分支名> //将与本地当前分支同名的远程分支拉取到本地当前分支上 git pull //将本地指定分支推送到远程指定分支上 git push origin <本地分支名>:<远程分支名> //将本地指定分支推送到与本地当前分支同名的远程分支上 git push origin <本地分支名> //将本地当前分支推送到与本地当前分支同名的远程分支上 git push //将本地分支与远程同名分支相关联 git push -u origin <本地分支名>
还没有评论,来说两句吧...