SSH免密登录
免密操作:
【1】进入用户的主目录中:
【2】执行命令,生成一个.ssh的目录:
keygen --- > key generation
注意:C要大写
后面的邮箱,是你的github注册的账号的时候对应的邮箱
三次回车确认默认值即可
发现在.ssh目录下有两个文件:
【3】打开id_rad.pub文件,将里面的内容进行复制操作:
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQCqiZEbHnyAbBFzx/OFWUyxlL2NUyf//1NdmvYfi+x09AENYVDXcPc2CLiUSYpUcRj7eWuLiIBuzYO/0aYTYgSLPMKAKn8WSLipd7S+vqRsxRLZYna+WvfGvYXc6DexenZlgoMzQe7CBE4IaL1eG4IAvAbjXSF0pq7OJKkcb5L8lQ0HlU9p+eC7WluoW+ZThym/Au8lscDtUVE/I9IwAgvUXB4TxmP7aYD1YCrAUuQ+6mlgh+Tqqb4aWyHPIvtXidkWOPS2pZ7zGi+1cQE6UFxxNlIrH5tczmOKOZ2XKemFWMFc4S89O1y9M9pfOFZZ5F4gbQf6PmrbB4eSyYmWT1TH6FBlB9eaw8v8w186qvqbUKHIc450/hZuQ9LehhdHDgkT86uBAEkXBwwHvVsIM61AD7TC0E1uMw0/Cf4I64vZOVF0/pE6rjs+0LqvF/mtq4aM1riIkSKqFFEm5sx2MsCAJrSBTr3uQFufAMA4VmANH6YAtTwgIJtV5AI16XQlY/8= chinazss@126.com
【4】打开github账号:
【5】生成密钥以后,就可以正常进行push操作了:
对ssh远程地址起别名:
展示别名:
创建一个文件:
添加到暂存区,提交到本地库,然后push到远程库(地址用的是ssh方式的地址)
ssh方式好处: 不用每次都进行身份验证
缺陷:只能针对一个账号
IDEA集成Git
本地库的初始化操作:
本地库初始化完成了,生成了.git目录:
添加到暂存区,再提交到本地库操作; add +commit:
当你更改内容以后,前面跟本地库内容不一致的地方会显示绿色:
本地库和远程库的交互
因为他们是两个不同的项目,要把两个不同的项目合并,git需要添加一句代码,在 git pull 之后,这句代码是在git 2.9.2版本发生的,最新的版本需要添加 --allow-unrelated-histories 告诉 git 允许不相关历史合并。
假如我们的源是origin,分支是master,那么我们需要这样写 git pull origin master --allow-unrelated-histories
这个方法只解决因为两个仓库有不同的开始点,也就是两个仓库没有共同的 commit 出现的无法提交。如果使用本文的方法还无法提交,需要看一下是不是发生了冲突,解决冲突再提交
push推送: git push -u origin master -f
到这里 远程库和本地库就可以进行交互了。
在IDEA中进行推送:
一般在开发中先pull操作,再push操作,不会直接进行push操作!
使用IDEA克隆远程库到本地
利用IDEA进行克隆项目
克隆到本地后:
这个目录既变成了一个本地仓库,又变成了工作空间。
解决冲突
【1】在你push以后,有冲突的时候提示合并操作:
合并:
如何避免冲突
【1】团队开发的时候避免在一个文件中改代码
【2】在修改一个文件前,在push之前,先pull操作