git gui 也就是git的可视化工具,当你下载好git后在每个界面都会显示出来,
如果你需要汉化,则下载汉化包:
链接:https://pan.baidu.com/s/12dfSux2eZyr1TUqHCX8N1Q
提取码:lmns
操作:把压缩包中的msgs文件夹copy到 Git安装目录/mingw64/share/git-gui/lib
进入到你已经关联到gitnub的一个本地仓库下,右击选择git GUI here
若不在本地仓库中打开,则显示的是:
在本地打开显示的是:
上传到gitnub的步骤:
选中你要提交的文件,点击提交工具中的缓存为提交---->添加描述点击提交按钮----->点击上传按钮
我理解的就是每台电脑上会产生出一个ssh key,然后自己有一个远程账户,但是自己有可能有很多台电脑,
包括家里的电脑还有公司的电脑,我们可以在任意一台电脑上工作,但是如果想要每台电脑都和远程版本库时刻保持着通讯,
就需要将每台电脑的ssh key添加到远程账户,添加到远程版本库之后,远程版本库就会和已经添加的电脑进行通讯而不会和其他电脑进行通讯。
第一步:本地电脑配置
这里是引用
1、配置用户名和邮箱(如果已经配置,就跳过)
git config --global user.name “username”
git config --global user.email “email”
2、检查下自己之前有没有已经生成ssh
cd ~/.ssh
ls
注1:当cd ~/.ssh命令执行后窗口返回“no such file or directory”的时候,表示我们的电脑并没有ssh key,所以需要我们创建ssh key
注2:~表示当前用户的目录,比如我的是:C:\Users\Administrator
注3:ls命令执行后,如果本地有ssh秘钥的话会有id_rsa.pub,config,known_hosts等文件
3、生成(或删除)秘钥
ssh-keygen -t rsa -C “[email protected]”//这里的邮箱要换成自己注册时的邮箱
接着按3个回车即可。
注1:如果本地有ssh,执行以上命令会出现正面的提示,这里选择y,表示覆盖本地的ssh key,其实也就是ssh秘钥删除的意思
注2:为什么要删除秘钥,创建SSH的时候设置过密码,那就很有可能git操作时出现忘记密码的尴尬情况,
不要想着怎么重新修改密码了,选择重新创建一个ssh秘钥
注3:创建ssh key不要输入密码了,不然操作起来太累~~~~~~~
4.执行命令完成后,默认会在window的C:\Users\Administrator.ssh下面生成如下两个名称的文件:
C:\Users\Administrator.ssh
id_rsa(私钥,不能泄露出去)
id_rsa.pub(公钥)
第二步:远程github仓库配置
3,
4,随意填入一个title,然后 key 中粘贴刚才复制的id_rsa.pub文本,
、、、、、、、、、点击 Add key 出现如下图,即完成。、、、、、、、、、
第三步:修改你本地的ssh remote url. 不用https协议,改用git 协议
1.git remote -v 查看你当前的remote url
git remote -v
若显示如下内容,则表示Git仓库是使用https协议进行访问的。
origin https://github.com/lixiao12/test224.git (fetch)
origin https://github.com/lixiao12/test224.git (push)
2.使用浏览器登陆github,找到仓库ssh协议相应的url。类似如下:
[email protected]:用户名/库名.git
3.使用 git remote set-url 来调整你的url。
git remote set-url origin [email protected]:用户名/库名.git
4.最后再用 git remote -v 查看一下。协议已改变
第四步:测试SSH连接
1.输入测试命令
ssh -T [email protected]
如果你是第一次则会出现如下图所示:
这是问你是否要继续连接,输入yes即可。
如果显示如下内容,表示ssh key添加成功:
Hi xxx! You’ve successfully authenticated, but GitHub does not provide shell access.
小结:https 和 SSH 的区别:
1.前者可以随意克隆github上的项目,而不管是谁的;而后者则是你必须是你要克隆的项目的拥有者或管理员,需要先添加 SSH key ,否则无法克隆。
2.https url 在push的时候是需要验证用户名和密码的;而 SSH 在push的时候,是不需要输入用户名的;如果配置SSH key的时候设置了密码,则需要输入密码的,否则直接是不需要输入密码的。
3.Git协议push远程仓库不需要填写github账号密码,操作更加方便。
然后在你要存放的文件夹中打开git bash命令窗口,输入
命令: git clone 秘钥
即下载完成。
若是其他账户使用你的秘钥来克隆,但在你的gitnub账户中并没有存放他的公钥,则下载不了,并且报错。
还有若你也没配置自己的ssh秘钥的话,你也克隆不了自己的private库。
设置git.exe的安装路径
点击菜单“File->Settings->Version Control->Git”,设置Path to Git executable的值为:D:\tools\Git\bin\git.exe,
注1:请将上述路径“D:\tools\Git\bin\git.exe”改为自己git的安装目录
注2:点击右边的“test”按钮,应该显示成功消息及git的版本信息
然后把git 和 github关联起来,
下图登陆有两种方式,一种是输入账户密码,还有一种是输入token来登陆。点击password下方的token即可使用token登陆,
查看token:
在gitnub中点击你的settings----->Developer settings ----->Personal access tokens
若你没有则新建:
输入你给这个token的命名,再根据你的需求勾选你给他的权限,你也可以全勾选上。点击创建即可。
复制这段登陆即可。
登陆成功则出现一个用户,失败则不会出现。
1,创建本地仓库
VCS–>Import into Version Control–>Create Git Repository…
然后打开这个项目窗口,若你在这个工作区间加了一个项目,他会弹出:
这是询问你是否添加到git里且,正常开发你可以点击YES来缩短开发时间,现在我们演示一下NO的步骤,
这是刚写的文件,他的名字显示的是红色,也就意味他是未跟踪的,
加入到git:
右击你的项目,----->git----->add
他就会把你的未跟踪或者修改的文件添加到缓存区里,并且颜色变为绿色,
commit directory 。弹出如下图,则是把你缓存区的文件提交到本地仓库。
注意的是这里提交可以选择提交到本地仓库也可以选择直接提交到远程仓库。
把项目上传到gitnub上:
VCS–>Import into Version Control–>Share Project on GitHub
弹出此窗口直接点击share就完事。
这时候点击你gitnub账户上的your repositories即可看到你的项目了。
当你文件修改了的时候如何提交:
add---->commit directory
弹出的窗体中下方,左侧显示的是在远程仓库的内容,右侧则是你修改后的内容。
点击commit 即到了本地仓库,
点击repository----->push提交到远程仓库:
弹出你修改的文件:
点击push即可。
idea就会通知你一个文件上传到了github
其他人如何下载你的项目到idea呢?
VCS------>checkout from Vesion Control----->git
弹出如下窗口,
URL填写的是你的项目SSH秘钥,Directory填写的是你要存放的位置
Test按钮就是测试是否可以成功,若提示Connection successful则成功,
等待clone完成,即可在你之前填写的Directory地址中看到你克隆的项目:
当一个人修改了文件并且上传到远程仓库,另一个人也修改了同一个文件准备上传文件的时候就会产生冲突,
第二个人会弹出如下窗口:
点击中间是合并分支的意思,点击之后会弹出如下窗口:
点击Merge,弹出如下窗口:
左边是你写的,中间是合并的,右边是别人写的。
点击箭头号即可复制到合并中间,
点击apply,然后再次add------>commit----->push即可提交到远程仓库,解决冲突!!