GIT
经历的辛酸史
CVC阶段的弊端:每一次提交都会提交所有的文件,造成服务器压力以至于淘汰。
SVN:每一次提交会和服务器进行对比,提交修改的文件。CVN至今仍然在使用(集中式),只有一个服务器,在脱离网络的情况下,无法进行相关的操作。
GIT:分布式的,每一个用户都有服务器(本地)
Git是一个分布式的版本控制系统,在Git中即使用户离线,也能进行项目的提交和更新操作(本地服务器),等到下次连线中央服务器时进行整体的同步操作
通俗来说:就是当你想要修改自己的代码的时候可以有个备份,你每上传一次就会出现一次版本,每个版本都有自己的ID号,你可以随时随地获取这些版本的代码。
如何将远程仓库和本地进行相关的练习
第一种:将远程仓库克隆到本地(先有远程仓库再有本地目录)
Clone with https:每次提交远程服务器都需要用户名和密码
Clone with ssh:配置私钥(本地)和公钥(配置给github)
流程:工作区(git add .) - - ->暂存区(git commit -m “注释”) - - ->本地服务器(git push origin master) - - ->远程仓库
git clone https地址或者ssh地址()
这时可以看到文件夹中已经出现了仓库中的文件
git status 查看状态
git add . 提交所有改动的文件。
git commit -m "提交的注释" 暂存区到本地服务器
git push origin master:提交远程服务(origin:远程服务器名称 master:主分支)
会出现输入用户名和密码的情况
第二种:将本地的开发目录变成远程仓库。
这里我用的是 SSH 具体方式在下方会具体介绍
git init
****。
**git add .
**把文件添加到版本库中,使用命令 git add .添加到暂存区里面去,不要忘记后面的小数点“.”,意为添加文件夹下的所有文件
git commit -m '提交说明'
用命令 git commit告诉Git,把文件提交到仓库。引号内为提交说明
git remote add origin 你的远程库地址
关联到远程仓库
git pull --rebase origin master
获取远程仓库的内容与本地同步合并(如果远程库不为空必须做这一步,否则后面的提交会失败)
**git push -u origin master
**把本地库的内容推送到远程,使用 git push命令,实际上是把当前分支master推送到远程。执行此命令后会要求输入用户名、密码,验证通过后即开始上传。
配置私钥
1.配置个人用户信息和电子邮件地址
git config --global user.name "用户名"
git config --global user.email "你的邮箱"
git config --list (查看所有配置项)
2.输入如下命令:ssh-keygen -t rsa -C “ 你的邮箱 ” --回车直到结束。生成ssh
3.从上面的路径中,找到公共的 拖入编译器中并复制里面的内容
4.进入github网站—点击右上角小图片—settings—左侧菜单SSH and GPG keys 把公钥粘贴进去