一、Git
1.控制工具
集中式版本控制工具(如svn)
优点:每个人能看到别人正在修改的代码
缺点:中央服务器的单点故障,如果服务器宕机,则无法提交更新代码
分布式版本控制工具(如git)
服务器断网的情况也可以开发,因为版本控制是在本的进行的,每个客户端保存的也是整个完整的项目,包含历史记录。
2.Git工作机制
Git是一个版本管理工具
commit生成历史版本后,push到远程库
代码托管中心(网站):
局域网:Gitlab
互联网:GitHub(外网)、Gitee码云(国内网站)
3.Git常用命令
首次安装必须设置一下用户签名,否则无法提交代码,用来区分操作者身份。
git config --global user.name 用户名:设置用户签名
git config --global user.email 邮箱:设置用户签名(git不会验证是否真实存在该邮箱)
git init:初始化本地库
git status:查看本地库状态
git add 文件名:添加到暂存区(add后删除:git rm --cached 文件名,注意是删除暂存区中的文件,并未删除当前工作区文件)
git commit -m "日志信息(即版本信息)" 文件名:将暂存区的文件提交到本地库
git reflog:查看历史记录
git log:查看详细日志,可以看到提交人和提交时间
git reset --hard 版本号:版本穿梭
git reset --hard HEAD~1:版本后退一步(HEAD指针后退一步,暂存区中还没有提交的变化、工作区中的变化都会被移除,工作区替换为上一步的commit,此时HEAD、暂存区、工作区都有相同版本的文件,git reflog找到对应版本号,git checkout -b 分支名 版本号,就能恢复最初的样子)
git reset --soft HEAD~1:HEAD指针后退一步,之前一步的改变保存在暂存区,可以通过git status查看,git commit可以回到最初的样子
git reset --mixed HEAD~1:HEAD指针后退一步,之前一步的改变重置到了工作区,git add+git commit可以回到最初
git stash:将本地没有提交的文件缓存并删除
git rebase:变基,Git中的分支线变为一条直线
git stash pop:恢复暂存的工作区内容
4.Git分支操作
git branch 分支名:创建分支
git branch -v:查看分支
git checkout 分支名:切换分支
git merge 分支名:把指定的分支合并到当前分支上
二、GitHub操作
1.创建远程仓库别名(先在github创建远程库,添加团队成员)
git remote -v:查看当前所有远程地址别名
git remote add 别名 远程地址:创造远程仓库别名
git push 远程库别名 分支名:推送本地库到远程库
git push 链接 (分支名)
git pull 远程库别名 分支名:拉取远程库到本地库
git clone 链接:克隆代码(不需要登录账号)(clone会做:1.拉取代码 2.初始化本地仓库 3.创建别名,默认origin)
2.配置SSH
在想要存放的目录下右击->git Bash
1.输入 ssh-keygen -t rsa -C 自己的邮箱
-t:指定用什么算法生成,这里是rsa非对称加密协议
-C:描述
2.敲三次回车,在目录下生成.ssh文件
id_rsa:私钥
id_rsa.pub:公钥
3.输入cat id_rsa.pub ,复制密钥,在github里的SSH and GPG keys->new SSH keys->复制密钥
3.IDEA集成Github
添加Github账号:File->setting->version controll->github->添加Github账号
把项目分享到github:Github->share project on Github
三、Gitee
IDEA集成Gitee:
File->settings->plugins->install Gitee->version controll->添加Gitee账号
下同Github操作