目录
简介
创建账号及配置SSH
Gitee官网地址:Gitee - 基于 Git 的代码托管和研发协作平台
在官网上注册账号后,需要点击右上角个人头像,再点击“设置”,然后在设置页面左侧分栏的“安全设置”栏目下的SSH公钥页面里上传自己的公钥,如果不清楚公钥怎么获取和配置,可以参考如下文章:
Git的Remote要使用SSH地址,使用SSH公钥可以让自己的电脑在和Gitee通讯时使用安全连接。
创建仓库
点击顶部导航栏右侧的 + 图标,选择“新建仓库”,然后按照个人需要填写信息后点击“创建”就可以新建一个Gitee仓库了。可以选择免费创建私有仓库【仅仓库成员可见】。
示例图:
使用多个远程库
因为git本身是分布式版本控制系统,因此可以同步到多个远程库,例如可以既关联Github,又关联Gitee。
使用多个远程库时,要注意git给远程库起的默认名称为origin,如果有多个远程库,需要用不同的名称来标识不同的远程库。
示例步骤:
1.删除已关联的默认远程库信息。
git remote rm origin
2.关联Github远程库,标识名为github【不是默认的origin】。
git remote add github git@github.com:yourName/yourRepo.git
注意将上面的yourName和yourRepo替换为自己的Github用户名和仓库名,下同。
3.关联Gitee远程库,标识名为gitee。
git remote add gitee git@gitee.com:yourName/yourRepo.git
4.查看远程库信息。
git remote -v
应该就能看到两个远程库的信息了。
5.推送到Github。
git push github master
6.推送到Gitee。
git push gitee master
基本命令
常用命令
在项目目录下初始化git仓库:
git init
和远程库相关联:
git remote add origin git@gitee.com:yourName/yourRepo.git
注意将上面的yourName和yourRepo替换为自己的Gitee用户名和仓库名。
查看远程库信息:
git remote -v
检查配置项:
git config --list
如果项目里已经配置了远程库连接,那么可能需要移除旧的远程库再添加新的。
移除旧的远程库配置:
git remote rm origin
注意上面的origin是远程库连接信息在配置文件里的配置名,可根据实际情况修改。
创建本地分支dev并切换当前分支为dev分支:
git checkout -b dev
这是如下两条命令的简写:
git branch dev # 创建分支。
git checkout dev # 切换分支。
查看本地分支及远程分支:
git branch -a
项目文件变动后将当前项目文件夹里的内容添加进git暂存区:
git add .
将git暂存区里的内容提交到HEAD:
git commit -m '备注说明'
在更新文件到线上前,建议先拉取线上文件更新:
git pull
pull后面不接参数则表示拉取远程仓库跟本地当前分支名对应的同名分支里的内容。
也可以在pull后面指定要拉取的分支名。如本地dev分支拉取远程master分支最新内容并与本地dev分支合并:
git pull origin master:dev
如果当前分支名就是dev,那么上面这行命令里的:dev可省略。
将本地仓库HEAD中的文件提交到远端仓库dev分支下并合并:
git push -u origin dev
上面这条命令等同于git push -u origin dev:dev。
-u的作用是指定默认主机。
如果本地当前分支是dev,想要直接提交当前分支dev里的内容到远端仓库里的master分支并合并【一般不建议这样做】,那么要注意先拉取更新,然后运行:
git push -u origin master:dev
若在本地dev分支下修改了文件,那么切换到本地master分支下,文件还是旧文件。因此需要在master分支下合并dev分支下的修改内容:
git merge dev
如果当前分支是master分支,想要合并远程分支dev,那么可以运行如下命令:
git fetch origin
git merge origin/dev
或者直接用一条语句【pull语句相当于fetch+merge语句】:
git pull origin dev:master
查看状态及执行命令
git status
删除远端仓库分支
git push origin --delete 分支名
删除本地仓库分支
git branch -d 分支名
注意不能删除本地当前分支,可以切换分支后再删除要删除的分支。
问题解决
1.在git pull或git push时报错:
fatal: refusing to merge unrelated histories
原因:
两个分支之间没有历史联系。
解决办法:
在操作命令后面加上--allow-unrelated-histories,如:
git pull origin master --allow-unrelated-histories