SSH-KEY And QuickGit
生成ssh-key
- 打开命令行,输入:ssh-keygen -t rsa
- 在命令行交互生成ssh-key的过程中输入密码:123456,重复两次
- 完成后即可在当前用户目录下的.ssh文件夹下查看到id_rsa、id_rsa.pub两个文件,即:~/.ssh/id_rsa、~/.ssh/id_rsa.pub
- id_rsa为私钥,id_rsa.pub为公钥,公钥需要保存在服务器端,才可获得服务器指定目录的读取权限
- 将公钥id_rsa.pub发送给git仓库管理人员,由其来添加项目访问权限
配置使用ssh-key
- 打开当前用户目录下的.ssh文件夹,即 ~/.ssh
- 新建config文件,配置如下:
Host name
Hostname 192.168.*.* User username IdentityFile ~/.ssh/id_rsa
克隆服务端项目工程
以下操作在git的图形化界面也可完成。
- 安装git客户端
- 克隆工程:打开git—bash,输入命令:git clone git@192.168.1.193:项目名称.git,提示:将工程名替换为要克隆的实际工程名
- 其中如果提示输入id_rsa秘钥的密码,即为生成ssh-key时设置的密码:123456
- 克隆下来的工程默认在master分支下,且本地只有一个master分支,此时需要执行切换分支及创建分支的操作:
- 提示:使用git branch -a查看所有分支
- 切换到远端开发分支:git checkout origin/dev
- 创建于远端开发分支一致的本地开发分支:git checkout -b dev
- 接下去即可在本地开发分支进行团队协作开发,每次提交或更新时,需输入私钥的密码:123456
本地工程操作及更新到服务端
在对工程进行了修改后
- 需保持团队沟通,防止出现同时修改一个文件造成git冲突的情况
- 修改前请确保在dev分支下,使用git checkout dev可切换到开发分支
- 不确认是否在dev分支的,使用git branch查看
- 使用:git status查看当前工程的改动有哪些
- 使用:git add 文件夹/文件名 的方式将改动添加到本地dev分支
- 使用:git commit 指令进行提交改动,需按日志书写标准书写日志(输入完指令后出现的为vi界面,按i进入编辑状态,编辑完成按esc,然后按冒号“:”,输入wq保存并退出,即可完成日志提交)
- 此时你所做的改动已经添加到本地分支的管理中去了,但是服务端并不知道你的改动,所以接下来你需要将改动推送到服务端
将本地分支的改动推送到服务端
- 在进行推送之前,需要先将远端分支更新到本地分支才可以,输入git pull origin dev指令来将远端的dev分支更新到本地dev分支
- 此时若产生冲突,则需要先查看并解决冲突,并将改动重新添加到本地dev分支后才可以进行推送操作
- 解决完冲突并提交修改到本地dev分支后/或并无冲突,则可以使用git push origin dev指令将本地的dev分支的所有改动推送到服务端dev分支下
分支开发技巧
- 若不确定自己的功能或想尝试新的功能,可自行在本地使用git checkout -b 分支名,来创建本地的分支,进而在分支上进行开发
- 若新分支下的改动存在价值,需要合并到dev分支下,则可以使用git merge dev 分支名,来将该分支合并到本地的dev分支
- 合并完成后若需要提交到远端同上面推送操作一直
总结
- ssh-key生成:ssh-keygen命令
- ssh-key配置:config文件
- git克隆远端仓库:git clone 远端工程路径
- git新建分支:git checkout -b 分支名
- git切换分支:git checkout 分支名
- git查看所有分支:git branch -a,带有origin/标识的,表示为远端分支
- git添加改动:git add 文件夹/文件名
- git提交改动:git commit
- vi简易操作:按i键进入编辑模式,按esc退出编辑模式,按:进入命令模式,此时输入指令wq即可保存并退出
- git更新远端分支到本地分支:git pull origin 分支名
- git推送本地分支到远端分支:git push origin 分支名
- git查看当前分支下文件改动状态:git status
- git查看推送日志:git log (可选项/-数字),例如:git log -2,输出两条最近的推送日志,不带数字则输出全部,若太长则最后一行提示为:,输入q可退出
- 更多指令:git diff,git --help