git 作为一个代码版本管理工具,在日常开发工作中,必不可少。一般情况下,在公司日常开发中,主要分为两种形式:
1.是直接下载git 安装包,然后使用命令行提交代码。
2.是通过编辑工具安装的git 插件提交代码到远程仓库。
常见的3个代码托管平台 也就是远程仓库
码云: 是开源中国社区团队推出的基于Git的快速的、免费的、稳定的在线代码托管平台,不限制私有库和公有库数量.
coding:是CODING 旗下的一站式开发平台,提供 git/svn 代码托管,免费支持私有库(限定)和公有库
github :全球最大的开源社区,基于git的版本托管平台。私有库需要付费,访问速度慢。
前提准备:
git 的配置及使用方法如下:
1. 设置你的用户名和邮箱(–global 为全局参数,表明本地所有Git仓库都会使用这个配置)
git config --global user.name "yourname"
git config --global user.email "[email protected]"
2. 生成密钥(SSH key)
ssh-keygen -t rsa -C "[email protected]"
3. 添加密钥(SSH key)
上一步操纵完之后,会生成2个密钥一个私钥,一个公钥,
然后将公钥里面的内容粘贴复制,在github的 Settings–>SSH and GPG keys–>New SSH key,key中粘贴复制的内容(Title自定义)/码云和coding 方法类似。本人电脑私钥,远程仓库公钥,这样就形成了一个验证机制。
4. 创建项目工程
1.远程仓库:在github中New repository 输入Repository name。
[例如:TestDemo]
2.项目工程:在自己本地电脑上新建一个与github新项目工程同名的文件夹。[例如:TestDemo]
5. 创建版本库
进入自己的项目工程文件夹下,输入以下命令初始化仓库,若出现:Initialized empty Git repository in E:/** /**/.git/ 则表示创建成功[注意:此时会生成一个.git目录(隐藏目录)]
git init
6. 连接远程仓库(下面两种方式都可以)
git remote add origin git@github.com:yourName/repositoryname.git
git remote add origin https://github.com/yourName/repositoryname.git
7. 从远程仓库pull文件(若远程仓库没有文件,直接执行步骤8)
git pull origin master
8. 将本地文件push到远程仓库(若没有文件则手动创建)
git status 查看工作目录的状态
git add <file> 将文件添加到暂存区
git commit -m "commnet" 提交更改,添加备注信息(此时将暂存区的信息提交到本地仓库)
git push origin master 将本地仓库的文件push到远程仓库(若 push 不成功,可加 -f 进行强推操作)
注: 至此已经完成了 远程与本地仓库的配置
9、相关问题
1. git pull origin master 无法进行pull,出现如下提示:
git pull origin master
fatal: unable to access 'https://github.com/yourName/Demo.git': error setting certificate verify locations:
CAfile: G:/Program Files/Git/mingw64/ssl/certs/ca-bundle.crt
CApath: none
分析:ca-bundle.crt文件是证书文件。根据提示CApath:none 没有该文件,所以无法访问远程仓库
解决:修改为正确路径 或者 将证书验证设置false
git config --system http.sslcainfo E:/Program Files/Git/mingw64/ssl/certs/ca-bundle.crt
git config --system http.sslverify false
2. git pull origin master 出现如下提示:
fatal: refusing to merge unrelated histories
解决:如下操作即可解决
**git pull origin master --allow-unrelated-histories**
3. 每次git push origin master 时都需要输入用户名和密码:
因为配置的时候使用的是https协议,所以每次都需要输入
git remote -v 查看远程连接
git remote rm origin 删除远程连接
git remote add origin git@github.com:yourName/repositoryname.git