前言

之前一直想一篇这样的东西,因为最初接触时,我也认真看了廖雪峰的教程,但是似乎我觉得讲得有点多,而且还是会给我带来很多多余且重复的操作负担,所以我希望能压缩一下它在我工作中的成本,但是搜索了一下并没有找到满意的教程,新的一年自己梳理一下自己的经验。

可能男生们大神比较多,觉得Git是如此简单,便已觉得命令行操作就是SO EASY,甚至或许有看不起可视化这样面对低端用户的心理,好的,那您就当我是水货可以右上角了。

我一直觉得类似GIT这样的东西,他对于我而言只是个不完全必须的工具,我并不想成为使用他的专家,类似的东西,今天有GIT,明天可能有GAT,或者GAY?所以快速地掌握它我需要的重要日常操作,最好是10分钟,那就好了,如果你有类似的想法,好吧,那不要废话了,咱们赶紧开始。

(全文限windows系统。)

何为GIT?

权限校验

首先,您的数据保存在远端服务器一份,服务器需要对您的身份识别。一段RSA加密字符串。

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

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

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

Gitlab中的演示

账号保存

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

【Step3.1-添加环境变量】

我的电脑 - 属性 - 高级系统设置 - 环境变量 - 新建变量

变量名HOME,变量值%USERPROFILE%

【Step3.2-创建账号文件】

开始 - 运行 中打开%Home%,即windows的管理员账号文件夹。

新建一个名为"_netrc"的文件,填写你要保存的服务器地址及账号密码,保存。

操作流程

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

初始化(Git init)

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

添加(Git add)

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

忽略(.gitignore)

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

提交(Git commit)

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

上传(Git push)

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

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

比如你在公司做好的东东,今夜难眠十分亢奋,回家准备继续搬砖,那咱们就在家里的电脑上,同上进行好各种安装配置账号,先把公司做好的东东嫩下来(不过公司是内网不可以,但是假如是Github上是可以的)。又或者和小伙伴一起开发个啥,你也要先fetch他的下来。至于怎么操作,下面上图。现在你只要知道,大大们下齿全露刷牙表情对你口口念念的fetch是个啥子~

 来,跟我念,fetch~~(我怕你们脑补不出来……)

先来设置与远程地址的关联,Git remote:

填写SSH地址与项目名。下面有3个选项:

第一个:立刻获取最新改动(所以如果是本地克隆远程一个项目,也可以这样操作)。

第二个:本地新建的项目,初始化远程仓库并发布过去。

第三个:什么也不做。

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

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

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

合并(Git merge)

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

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

冲突处理(Conflict)

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

在GUI界面正文区,正文区右键可以选择,Use local version(使用本地版本)或Use remote version(使用远程版本),到底用你的还是小伙伴的?或者你也可以自己再整合。

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

总结

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

2.操作流程:

是不是觉得so easy了呢,赶紧have a try!

来源:http://www.cnblogs.com/iruxu/p/gitgui.html

git gui怎么拉取项目代码_Git可视化极简易教程 — Git GUI使用方法相关推荐

  1. git gui怎么拉取项目代码_Git可视化极简易教程 —— Git GUI使用方法

    前言 之前一直想一篇这样的东西,因为最初接触时,我也认真看了廖雪峰的教程,但是似乎我觉得讲得有点多,而且还是会给我带来很多多余且重复的操作负担,所以我希望能压缩一下它在我工作中的成本,但是搜索了一下并 ...

  2. git gui怎么拉取项目代码_Git GUI使用方法【转】

    前言 之前一直想一篇这样的东西,因为最初接触时,我也认真看了廖雪峰的教程,但是似乎我觉得讲得有点多,而且还是会给我带来很多多余且重复的操作负担,所以我希望能压缩一下它在我工作中的成本,但是搜索了一下并 ...

  3. git gui怎么拉取项目代码_这些Git命令都不会,还是不要去面试了

    前言 以下,项目中经常使用的Git命令,汇总到这里以便与你能快速的学习和掌握Git命令,在文章最后有惊喜哟,一定要看到最后啊! 使用的 Git版本:git version 2.24.0 命令 git ...

  4. Git可视化极简易教程 —— Git GUI使用方法

    前言 之前一直想一篇这样的东西,因为最初接触时,我也认真看了廖雪峰的教程,但是似乎我觉得讲得有点多,而且还是会给我带来很多多余且重复的操作负担,所以我希望能压缩一下它在我工作中的成本,但是搜索了一下并 ...

  5. SVN拉取项目代码(checkout)和远程强制关闭一个现有链接

    一.checkout代码 创建文件夹,在哪个盘都可以 在文件夹中鼠标右击选择SVN Check out 弹出: 写入svn URL ==> ok, 小技巧:拉取项目代码时先不忙拉取代码可以将sv ...

  6. git命令行拉取合并代码流程

    自己的分支:eleven 远程分支:dev fetch本地新创建分支: test 工作区:就是你在电脑里能看到的目录. 暂存区:英文叫 stage 或 index.一般存放在 .git 目录下的 in ...

  7. git提取和拉取的区别_git fetch和git pull的区别

    [是什么]:平时开发经常遇到不清楚的问题就百度/google,目的是能快速使用并解决问题.这时我们没有花太多时间去深入理解,只求能快速解决手头问题. [为什么]但是如果要深入理解的话,发现有时候百度出 ...

  8. idea使用svn拉取项目代码_IntelliJ IDEA 14 拉取SVN maven 多模块项目 部署tomcat 详细图解!...

    二话不说 进入主题 我们创建空项目实际上是项目空间 进入主界面 想用svn必须先启用它 选择Subversion 拉取 svn项目 你会发现这里检测不到目录 我们进入 File>Seting 里 ...

  9. 码云、coding拉取项目代码

    1.git init 2.git remote add origin "你的码云或coding项目地址(ssh或https)" 3.git pull origin master 转 ...

最新文章

  1. 什么是动态DNS 动态DNS有什么用
  2. 在HTML5 localStorage中存储对象
  3. Qt 工程 pro文件
  4. generator探幽(1)--koa中间件机制浅析
  5. 显示/隐藏Mac系统中所有的隐藏文件
  6. 超详细设置 Idea 类注释模板和方法注释模板
  7. Spring事务—方法调用事务回滚
  8. 查找html的第三个input元素,获取HTML元素的3个方法
  9. Security+ 学习笔记43 无线网络
  10. 百度Hi Csrf蠕虫攻击
  11. LeetCode之移除元素
  12. Unity3D初级工程师面试题及知识点
  13. 计算机视觉的一些测试数据集和源码站点
  14. PTA---约分最简分式 (10 分)
  15. blockchain-explorer(pg版) 区块浏览器部署及配置详解
  16. 【英语词组】恋恋不忘Day4-2
  17. 切换无线网卡失败服务器提示,无线网卡切换为AP模式时提示ICS启动失败的解决方法...
  18. mysql创建用户只能访问数据库中一张表
  19. mint-ui 中 popup 组件的 closeonclickmodal 无效
  20. 影响未来十年的2020十大科技趋势,除了AI与区块链,还有哪些?

热门文章

  1. Spring事务那些事儿
  2. react接收后端文件_React获取Java后台文件流并下载Excel文件流程解析
  3. python常用快捷键、写代码事半功倍_Pycharm常用快捷键总结及配置方法
  4. python+Tesseract-OCR实现图片识别(只适合新手)
  5. Linux环境下Mysql的安装教程及安装过程常见问题的解决方法
  6. hive遍历_从Hive中的stored as file_foramt看hive调优
  7. 关于Xcode隐藏打印的logs的方法
  8. 第二季3:海思MPP模块与视频缓冲池
  9. mysql分区表mycat_MySQL 中间件之Mycat垂直分表配置
  10. 图表相同数据会自动合并问题(finereport)