Gitkraken的使用
一个优秀的团队合作离不开git,一个优秀的程序员也离不开git。gitkraken是我在进行软工实践这门课接触到的git的UI界面的工具,它给我留下的印象就是非常好用和方便
怎么个方便法呢?
方便的安装方法:
- 百度gitkraken,第一条就是官网的下载地址。这里我也给大家加上了链接:戳这里
- 下载下来有一个.exe的文件,双击运行,它就会自动帮你安装完毕的!
登录:
- 刚刚打开的gitkraken就是如图所示(我已经登录完毕)。这里我们有多种选择,我们可以用github的账号密码,也可以申请一个gitkraken的账号(不过这个进去要自己绑定GitHub的账号),甚至可以创建一个自己的GitHub的账号!
- 相信大家都是有了GitHub的账号才开始着手git的操作的,我们这里选择的是点击“Sign in with Github”
- 它会弹出叫我们验证github的账号和密码,上图我已经授权了,所以显示的是授权成功的信息。
- 这时返回我们的gitkraken可以发现已经登录成功
- 刚刚打开的gitkraken就是如图所示(我已经登录完毕)。这里我们有多种选择,我们可以用github的账号密码,也可以申请一个gitkraken的账号(不过这个进去要自己绑定GitHub的账号),甚至可以创建一个自己的GitHub的账号!
创建Generate SSH key
- 点击右上角按钮,并选择preferences,进入后选择Authentication
- 我们可以看到我们的Generate SSH key是空的,现在我们点击去创建一个,创建成功后返回到我们的主界面
- 点击右上角按钮,并选择preferences,进入后选择Authentication
clone远程仓库
- 点击左上角的文件图标
进入界面后点击clone
- 先选择自己要放的本地仓库的路径
- 进入github,选择自己要clone的仓库,将对应的SSH路径copy下来
然后回到gitkraken将copy的路径复制到URL框里,然后点击clone the repo 的按钮
- 点击左上角的文件图标
管理本地,并remote团队项目
- 首先我们先创建本地的dev分支。在我们的远程仓库那边右击的对话框中,选择“checkout origin/dev”
这时我们可以发现本地已经创建好了dev分支,并选中在这个dev分支上工作 - 添加团队项目。点击remote上的加号按钮,可以弹出相应的选择框。
这时我们选择我们的项目(这里我演示的stardust的团队项目),相应选中后,编辑在gitkraken要显示的项目名称,点击“add remote”
- 这时我们在分支图上可以很明显的看到团队项目和我们本地自己编辑的分支,以及自己远程仓库的情况
- 首先我们先创建本地的dev分支。在我们的远程仓库那边右击的对话框中,选择“checkout origin/dev”
fetch项目,并将团队项目与自己的项目合并
- 这个是团队合作中很重要的一步。首先fetch团队最新的进展,还是右击团队项目栏,在对话框中选择“fetch xxx”,即可获取团队最新的动态。
- 接下来选择相应的分支merge到本地(这一步很大的几率会出现冲突,大家不要慌张)。还是右击,在对话框中选择“merge xxx/dev to dev ”
如果显示success的话,恭喜你,你的项目和团队的项目是没有冲突的。如果出现冲突,将会出现冲突文件,gitkraken会提醒你去解决冲突。一般来说,我们选择的都是手动的来解决冲突问题。
这里会显示冲突的文件或者改变的文件,我们可以单击相应的改变的文件进去查看,merge下来的文件跟我们本地的文件的差异体现在哪里,然后根据相应的逻辑去判断。
解决了每个问题我们可以在相应的问题后面mark the changes。
- 这个是团队合作中很重要的一步。首先fetch团队最新的进展,还是右击团队项目栏,在对话框中选择“fetch xxx”,即可获取团队最新的动态。
注意事项:
- 每次在fetch团队项目时,记得先commit,将自己编辑的内容保存起来。否则可能在手动解决冲突的时候,或者gitkraken在自动解决冲突的时候,会改变自己之前编辑的内容,造成代码的丢失。本地的commit相当于在本地保存了一份副本,有利于我们版本的回退。切记!!!
后悔药
- gitkraken提供了强大的版本回退功能。上面我们说过了,我们经常在解决冲突的时候删掉或改变了一些我们不知所以然的代码。这时我们在当前无法处理的情况下,我们可以选择的是do once again。首先选择你在本地的,想回退到的版本。像我当前选中的是我想后退六个版本
然后右击选择“hard-discard all changes”
接下来打开你的项目,你会发现,你要的版本回来啦!
- gitkraken提供了强大的版本回退功能。上面我们说过了,我们经常在解决冲突的时候删掉或改变了一些我们不知所以然的代码。这时我们在当前无法处理的情况下,我们可以选择的是do once again。首先选择你在本地的,想回退到的版本。像我当前选中的是我想后退六个版本
gitkraken还有很多强大的功能等待着大家去发掘,我现在用到的功能大致就是这些。最后附上几个git的教程,希望对大家有所帮助。
Gitkraken的使用的更多相关文章
- gitkraken clone报错 Configured SSH key is invalid
gitkraken clone远程仓库时报错 Configured SSH key is invalid. Please confirm that is properly associated wit ...
- 超详细!Github团队协作教程(Gitkraken版)
超详细!Github团队协作教程(Gitkraken版) 一.前期工作 1. 在 Github 上创建 organization step1. 登录Github网站,点击右上角头像,选择 " ...
- 使用Gitkraken进行其他Git操作
使用Gitkraken进行其他Git操作 查看某次 commit 的文件改动 使用 Gitkraken 能非常方便的看到任意一次的 commit 对项目文件的改动. 具体操作是:在树状分支图上单击某个 ...
- GitKraken 团队项目使用教程
前期准备:刚下载好要配置些东西,这些跟着教程走就好了,现在主要是讲团队项目的使用,创建分支 和Fork项目到个人仓库,请参考这篇博客的前两个点 1.将项目克隆到本地 打开GitKraken 点击Fil ...
- Gitkraken系列-Gitkraken使用操作
一个优秀的团队合作离不开git,一个优秀的程序员也离不开git.gitkraken是我在进行软工实践这门课接触到的git的UI界面的工具,它给我留下的印象就是非常好用和方便 怎么个方便法呢? 方便的安 ...
- GitKraken使用教程-基础部分(9)
10. 合并分支并解决冲突(conflict) 1) 合并分支 在代码管理过程中,切换分支或者同步服务器代码时,常常会出现代码冲突的情况,这种情况出现的原因一般是由于两个分支对同一个文件进行修改, ...
- GitKraken使用教程-基础部分(8)
9. 远程(Remote)仓库 1) 添加远程仓库 一般在本地新建仓库后,需要添加一个远程仓库用于push/pull代码.鼠标移至GitKraken左侧区域的REMOTE栏,点击 该栏右边出现的 按 ...
- GitKraken使用教程-基础部分(7)
8. 本地分支和标签 1) 在提交记录区中查看分支状态 提交记录区中每一个分支都位于一个提交记录所在的行中. 从图 2‑1中可以看到,服务器上的master分支停留在整理格式(把这个提交记录记为or ...
- GitKraken使用教程-基础部分(5)
7. 提交代码 1) 查看文件改动 修改了某个文件后,在程序右侧会出现已修改文件的列表(如图 1‑1),这里以Test.git 为例,修改了19264.h 的文件编码,将其改为utf8.Unstage ...
随机推荐
- webpack4 自学笔记五(tree-shaking)
全部的代码及笔记都可以在我的github上查看, 欢迎star: https://github.com/Jasonwang911/webpackStudyInit/tree/master/ThreeS ...
- Android UI相关开源项目库汇总
最近做了一个Android UI相关开源项目库汇总,里面集合了OpenDigg 上的优质的Android开源项目库,方便移动开发人员便捷的找到自己需要的项目工具等,感兴趣的可以到GitHub上给个st ...
- Html.DropDownListFor练习(2)
下午有做了练习<Html.DropDownListFor练习>http://www.cnblogs.com/insus/p/3382575.html 在实现过程中,需要创建一个List&l ...
- Spring Security认证配置(三)
学习本章之前,可以先了解下上篇Spring Security认证配置(二) 本篇想要达到这样几个目的: 1.登录成功处理 2.登录失败处理 3.调用方自定义登录后处理类型 具体配置代码如下: spri ...
- [日常] Go语言圣经--作用域,基础数据类型,整型
go语言圣经-作用域 1.一个声明语句将程序中的实体和一个名字关联,比如一个函数或一个变量 2.一个变量的生命周期是指程序运行时变量存在的有效时间段;声明语句的作用域对应的是一个源代码的文本区域,它是 ...
- Collection集合的带All功能的测试
public class Demo4_CollectionAll { public static void main(String[] args) { // Demo1(); // Demo2(); ...
- CodeForces822A
A. I'm bored with life time limit per test 1 second memory limit per test 256 megabytes input standa ...
- linux服务器SSH破解预防方法
1.linux服务器通过配置 /etc/hosts.deny 禁止对方IP通过SSH登录我的服务器 vim /etc/hosts.deny 2.不用SSH服务的默认端口22,重新设置一个新端口,最好设 ...
- ThinkPHP5自定义分页样式
1.在thinkphp/library/think/paginator/driver目录下新建文件Page.php 注意命名空间和继承 <?php namespace think\paginat ...
- python常用模块-01
1. 简单了解模块 写的每一个py文件都是一个模块. 还有一些我们一直在使用的模块 buildins 内置模块. print, input random 主要是和随机相关的内容 random() ...