一.安装:
1.软件下载:https : //git-scm.com/downloads
2.安装过程中,选择默认一直到底
3.在“开始”程序Git中,点开Git-Bash,打开命令窗口
4.cd到本地代码库 输入git init创建本地git库
案例如下:
echo "# center" >> README.md git init git add README.md git commit -m "first commit" git remote add origin https://github.com/你的账号/center.git git push -u origin master
二.原理图
本地git库版本管理原理如上图:
三.常用命令
git add 文件名 将文件的修改信息保存到版本库中暂存区
git commit -m'注释信息' 将暂存区保存到当前分支(默认master)
git checkout -- 文件名 舍弃工作区的修改,恢复到修改之前
git reset HEAD 文件名 把文件从暂存区撤销到工作区
git reset --hard HRAD 舍弃commit之后的版本,返回到某个版本(可通过git log查看本地的版本库的状态)
git rm 文件名 删除文件,在push线上之前可恢复。但最近一个版本之后的修改就丢弃了。
git remote add origin git@github.com:账号/版本库名.git 前提在github账号加入私钥,将本地代码库与github库联系起来,就可以用克隆,上传代码
git push origin master 将当前的节点的代码,同步上传到线上master分支
git clone git @github.com:账号/代码库名.git 本地代码库地址 将当前分支的github线上代码库的代码,下载到本地
git checkout -b dev 创建dev分支,并转到dev分支环境下
git branch 显示分支情况
git checkout dev 切换到dev分支
git merge dev 在master分支下,合并dev分支
git branch -d dev 删除dev分支
四.常见问题解决方法
1.版本冲突
在以下情况,就会出现版本冲突:
1.常出现两位程序员,对同个程序文件同时进行修改,那么后一位程序员推提交到github上库时,
2.建立了两个分支,先后在两个分支修改,提交,将两个分支合并时
解决方法:打开冲突的文件,对代码进行清理,再add,commit提交,push或合并,删除分支
2.SSH警告(来自:HTTPS://www.cnblogs.com/horanly/p/6604104.html)
在第一次推或克隆代码的时候,会出现SSH警告,解决的方法有:
由于本地Git仓库和GitHub仓库之间的传输是通过SSH加密的,所以必须要让github仓库认证你SSH密钥,在此之前,必须要生成SSH密钥。
第1步:创建SSH密钥。在windows下查看[c盘->用户->自己的用户名->.ssh]
下是否有id_rsa
,id_rsa.pub
文件,如果没有需要手动生成。
打开git bash,在控制台中输入以下命令。
1 |
|
密钥类型可以用-t选项指定。如果没有指定则默认生成用于SSH-2的RSA密钥。这里使用的是rsa。
同时在密钥中有一个注释字段,用-C来指定所指定的注释,可以方便用户标识这个密钥,指出密钥的用途或其他有用的信息。所以在这里输入自己的邮箱或者其他都行。
输入完毕后程序同时要求输入一个密语字符串(密码),空表示没有密语。接着会让输入2次口令(密码),空表示没有口令0.3次回车即可完成当前步骤,此时[c盘>用户>自己的用户名>.ssh]
目录下已经生成好了。
第2步:登录github。打开设置 - > SSH密钥,点击右上角新建SSH密钥,把生成好的公钥id_rsa.pub
放进密钥输入框中,再为当前的密钥起一个标题来区分每个密钥。
3.git安装
https://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000/00137583770360579bc4b458f044ce7afed3df579123eca000
4.码云的使用:https://gitee.com
作为国内github网站,免费版本提供私有库,限5人团队使用
具体的注册步骤见(https://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000/00150154460073692d151e784de4d718c67ce836f72c7c4000)
注册账号,建立版本库,上传ssh秘钥后,那么就要建立本地库与线上库的联系,
一般我们将本地版本库与github线上版本库联系起来,使用以下命令:
git remote add origin git@gitee.com:ruoshuiqinmo/learngit.git
默认用origin对线上库对应起来,如果我们依然使用 origin对应码云的版本库,就会报错,那么我在执行以上的命令时候,先用以下命令,查看本地版本库与线上版本库的已经建立的联系
git remote -v
如果origin已经建立联系,可以使用其他的名字替换
git remote add gitee git@gitee.com:ruoshuiqinmo/learngit.git
gitee git@gitee.com:ruoshuiqinmo/learngit.git
那么,提交代码的命令响应改变如下:
git push gitee master
gitee master