权限校验

首先,服务器需要身份识别。一段RSA加密字符串。

启动GUI,菜单-帮助
【Step1-创建密钥】Generate SSH KEY

【Step2-添加密钥】去你的代码托管服务器,你的账号设置中,添加它。

比如在Github中的地址,title随意,比如你可以用Home,company等作为标识来区别。

账号保存

如果不做设置的话,每次提交的时候,都会询问你填写密码。于是我们先来把这个设置好。

【Step3.1-添加环境变量】
变量名HOME,变量值%USERPROFILE%
【Step3.2-创建账号文件】
开始 - 运行 中打开%Home%,即windows的管理员账号文件夹。
新建一个名为”_netrc”的文件,填写你要保存的服务器地址及账号密码,保存。

machine github.com
login 
password 

操作流程

如果你用过SVN的话就会大致了解操作流程,如果没有也没关系。

初始化(Git init)

顾名思义,就是新建一个项目,跟你用PS新建一张画布一样。在你新建好的文件夹中右键创建即可,若点击Git bash则以此目录作为当前目录进入命令行状态。

添加(Git add)

添加并不是提交代码到远程Git库,Git也并不会你修改了代码。
它是自动帮你保存你修改的每一个过程。
你修改了很多文件,但未必所有的修改,最终打算提交上去,那么哪些是你打算提交的,你可以添加进来待会提交,叫做缓存改动。
很简单,比如本地电脑上我有整个项目完整的东东,甚至包含了账号密码的一些文件,但是我只是ADD除账号密码之外的文件,并不缓存账号密码文件的改动。不被ADD它就不会参与后续的操作。
通常我都会直接全部缓存,它会自动寻找所有有改动的文件,而不需要提交的文件放在忽略的文件夹中。(关于忽略下面我们就会说到)

忽略(.gitignore)

但实际上大部分我们的文件都是一起提交的,并不会逐一去甄选,又或者类似PSD这样的大源文件以及并不作为产品最终展示的过渡文件,我们可以统一放在临时文件夹中,并忽略此文件夹。

提交(Git commit)

提交则代表此前被添加ADD的文件已确认被提交到Git库了。需要注意的是,如果你改变代码的缩进(尽管没有修改内容),默认状态下会被识别为整个代码全部变更。提交的时候是要求必须要写备注的。

上传(Git push)

顾名思义,上传则是上至远端服务器了,小伙伴们可以看到咱们的渣渣代码了(好羞涩。

获取远程代码(Git remote/fetch)

将远程代码获取到本地,但并未merge

在项目的进行过程中,获取仓库的最新改动Git fetch

选择从远程仓库哪个分支中获取更新,如果没有则只有主支。

提示成功则改动的已经被存放到临时区了,你一会还需要进行合并操作,如果没有任何改动,则列表中是空的,比如:

合并(Git merge)

请注意啦,不管你本地有没有代码,fetch之后呢,是都要merge的,也就是说,fetch下来后,大大的代码还在一个小黑屋里,我们需要把它装到自己兜里。

选择合并 - 本地合并,然后选择本地的分支(如果你没有创建分支,则只有1个主支master)

冲突处理(Conflict)

合并的过程中可能会出现一些红色的文件与一堆叹号,这时候慌慌张张的点啥它都不管用,不用担心,不是程序坏了,只是有冲突的文件,例如A童鞋写了width:1180px,你写了width:auto。那到底用你们谁的呢。

在GUI界面正文区,正文区右键可以选择,Use local version(使用本地版本)或Use remote version(使用远程版本),到底用你的还是小伙伴的?或者你也可以自己打开文件进行手动处理。

其他还有分支和一些高级功能,如果需要了解可以自己再摸索摸索,以上的操作已经可以满足简单的开发需求了。

总结

1.先进行安装,密钥添加,账号等一次性操作。

2.操作流程:

图片

补充:

1.GUI界面中中文乱码问题:Git安装目录,etc/gitconfig,添加如下,中文正常显示

[gui]
encoding = utf-8
2.GUI添加自定义命令

Tools - Add,名称填写菜单展示时的名称,Command填写命令,例如“git submodule foreach git pull origin master”更新公共库。勾选global为全局可用。

3.找不到文件BUG

这里补充一个问题,例如你新建了分支后,有可能出现新拉取的分支找不到的现象,请关闭GUI重新打开即可。

4.Windows下的多窗口命令行

下载powerCMD / cmder

添加环境变量;C:\Program Files\Git\cmd (改为你的实际路径)

Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐