git操作大全
一、git简介
git是一个开源的分布式版本控制系统,也是目前比较流行的,可以有效、高速地处理从很小到非常大的项目版本管理。
二、git相关操作命令
1.首先创建一个远程仓库(如:gitHub、gitLab、gitee等上面创建远程仓库)
2.本地寻到项目根目录下,windows下使用gitbash或cgywin
3.初始化本地git仓库配置: git init
4.添加远程仓库: git remote add origin [远程仓库地址]
5.添加工作区代码到本地暂存区: git add .
6.添加暂存区代码到本地仓库:git commit -m"[提交描述]"
7.将远程仓库pull下来:git pull origin master
8.将代码push到远程仓库: git push -u origin master
9.将本地跟踪的远程分支进行更新,与远程库一致; git fetch
10.查看全部分支 git branch --all
11.创建分支: git branch dev
12.选择分支git checkout dev
13.创建并选择分支: git checkout -b dev
14.删除本地分支: git branch -d dev
15删除远程分支: git push origin -d dev
1.克隆
//示例地址,不可用
//下载远程master分支,并且本地分支名字为master
git clone https://github.com/master-dev.git
//指定下载远程dev分支,并且本地分支名字为dev
git clone -b dev https://github.com/master-dev.git
三、使用git时的一些异常处理办法
1.错误:fatal: remote origin already exists.
处理方式:
//先本地移除远程仓库(谨慎移除)
git remote rm origin
//再重新创建远程仓库
git remote add origin [远程仓库地址]
2.报错:fatal: ‘origin’ does not appear to be a git repository fatal: Could not read from remote repository.
处理方式:
//name 为远程登录名 127.0.0.1/intellect.git 为远程项目地址
git remote add origin http://name@127.0.0.1/intellect.git
3.报错 fatal: refusing to merge unrelated histories ,因为他们是两个不同的项目,要把两个不同的项目合并,git需要添加一句代码,这句代码是在git 2.9.2版本发生的,最新的版本需要添加**–allow-unrelated-histories**,修改后的命令为
git pull origin master --allow-unrelated-histories
4.git push 会报错,可能是因为没有创建本地dev和远程origin/dev的关联。
//查看本地分支和远程分支的关联关系
git branch -vv
//可通过git branch --set-upstream 创建关联关系
git branch --set-upstream dev origin/dev
5.分支合并
//先切回本地master分支,然后用merge方法合并
git checkout master
//合并本地分支
git merge dev
//推送至远程master即为合并后的分支
git push origin master
6.一个本地分支问题
原来项目在 master 分支,拉取之后创建本地dev分支,然后切换dev分支,创建一个文件
//按s开始编辑,编辑结束按Esc , shift+: , wq , enter回车退出
touch README.txt
vim README.txt
切回master分支发现master分支下也有一个README.txt文件,说好的分支之间不互相影响,为什么dev分支下的修改也会被同步到master分支呢?
其实不是问题,本地的一份记录,新建文件以后,没有commit 还只是一个本地文件,在哪都能看到。只要add 、commit后再切换回master,master分支就不显示这个文件了,dev才真的成了一个独立的分支。
切换分支之前,确保当前分支没有未提交的修改。