7. 提交代码

1) 查看文件改动

修改了某个文件后,在程序右侧会出现已修改文件的列表(如图 1‑1),这里以Test.git 为例,修改了19264.h 的文件编码,将其改为utf8。Unstaged Files 方框内就会出现为19264.h

图 1‑1尚未暂存的文件

点击这一项,GitKraken的左侧区域和中央区域就会变成文件比较器,如图。

图 1‑2文件比较器(Diff View)

该图是以Diff View的形式显示文件,也就是显示当前提交和上次提交时该文件改动的位置。红色部分表示这次提交所删除的内容,绿色部分表示这次提交所增加的内容。

点击Diff View旁边的File View(图中的右上角)即可用普通的文本显示器形式查看文件内容。

这里可以看到改动的部分是将乱码的内容全部重新正确解码了。

2) 按文件进行提交

对代码进行修改后,如果认为这次修改的所有文件都没有问题,可以将所有文件全部存入暂存区,然后填写CommitMessage,具体步骤如下:

  1. 点击右侧  (见图 1‑3中显示的绿色按钮)按钮可以把已经修改的所有文件存放到暂存区中。

图 1‑3 暂存文件

如果只想提交某几个文件,鼠标移至该项所在位置,右侧即会出现  按钮,如图 1‑4,点击就可以将这一个文件存放到暂存区(图 1‑4)。

  2. 存到暂存区后,在暂存区就会出现这个文件:

图 1‑4 暂存区中的文件

  3. 接下来填写CommitMessage(至少需要填写Summary),提交(commit)到工作目录,就能生成一个提交记录,便于以后回退代码版本或进行其它操作。

图 1‑5 Commit Message 方框

3) 提交文件中的一部分代码

提交代码时,如果不想提交整个文件,可以在GitKraken中点开该文件的比较视图(Diff View),比较上一次代码提交和本次修改的内容。

从图 1‑6中可以看到,GitKraken已经将改动的代码按照区域进行分块了。

鼠标移至该块,右上方会出现一个 按钮和 按钮。如下图:

点击 将会暂存这一块修改的内容,保留绿色部分(即保留+2 ~ +4 行的内容,丢弃 -2 ~ -4 行的内容),

将会丢弃掉改动的这一部分,保留红色的部分(保留-2 ~ -4 行的内容,丢弃 +2 ~ +4 行的内容)。

以19264.h为例,若保留一部分修改过的内容和一部分修改之前的内容,那么该文件既会存在于Unstaged Files列表中,也存在于Staged Files列表中,这是因为该文件还有部分没有提交到暂存区中。

从19264.h文件编码改为utf8后的提交记录开始,在文本编辑器中已经将LCD_Send_1 函数整个删除,红色区域就对应着代码的删除记录。若现在只需要删除 LCD_Send_1 函数中的switch判断语句,即图中的 -45 ~ -50 行代码。

图 1‑7 删除文件的一部分

注意到,鼠标移动到改动区域的某一行时,该行左侧会出现一个  按钮,点击该按钮就会确认这个修改。

图 1‑8 保留文件修改

现在需要保留 -36 ~ -63 行的内容,点击图中的 按钮,该界面会出现提示:File contents are unchanged. 而 Unstaged Files 列表中仍有 19264.h 文件,

点击列表中文件右侧的  按钮,将该文件提交到暂存区即可。将会提交的内容如下:

图 1‑9 暂存区中的文件

可以看到,将要提交的文件(记为A2)与之前的文件(记为A1)相比,少了A1中的45~50行,填写Commit Message,提交到工作目录。在文本编辑器中查看,能够发现LCD_Send_1 函数中的 switch 语句已经删除。

GitKraken使用教程-基础部分(5)的更多相关文章

  1. GitKraken使用教程-基础部分(4)

    6. 打开现有的Git仓库 点击左上角 File ==> open repo ,出现如图 6‑1的界面: 图 6‑1 打开本地仓库 点击图中的  按钮就会出现一个对话框,如图 6‑2,以 G:\ ...

  2. GitKraken使用教程-基础部分(3)

    5. 克隆服务器上的项目 首先,返回主界面,点击File => Clone Repo,选择 Clone with URL,如下图: 图 5‑1 SSH方式克隆仓库界面 1) SSH 方式连接仓库 ...

  3. GitKraken使用教程-基础部分(2)

    3. 修改用户名 为了方便项目中代码的管理,需要重新编辑用户名. 点击右上角的图像即可看到如下图 3‑1所示的下拉菜单,鼠标悬于Profile上,会出现一个Edit按钮. 图 3‑1 编辑个人信息 点 ...

  4. GitKraken使用教程-基础部分(1)

    1. 首次打开程序 第一次打开GitKraken程序时, GitKraken会提示需要登陆,可以用github.com的账号登陆,或者用邮箱创建账号登陆(如图 1‑1). 图 1‑1登陆帐户界面 登陆 ...

  5. GitKraken使用教程-基础部分(9)

    10.  合并分支并解决冲突(conflict) 1) 合并分支 在代码管理过程中,切换分支或者同步服务器代码时,常常会出现代码冲突的情况,这种情况出现的原因一般是由于两个分支对同一个文件进行修改, ...

  6. GitKraken使用教程-基础部分(8)

    9.  远程(Remote)仓库 1) 添加远程仓库 一般在本地新建仓库后,需要添加一个远程仓库用于push/pull代码.鼠标移至GitKraken左侧区域的REMOTE栏,点击 该栏右边出现的 按 ...

  7. GitKraken使用教程-基础部分(7)

    8.  本地分支和标签 1) 在提交记录区中查看分支状态 提交记录区中每一个分支都位于一个提交记录所在的行中. 从图 2‑1中可以看到,服务器上的master分支停留在整理格式(把这个提交记录记为or ...

  8. GitKraken使用教程-基础部分(6)

    4) 放弃本次文件的改动 有些情况下,由于更改代码造成了编译无法通过等错误时,想要放弃这次对文件的修改,将文件还原成上一次提交后的状态,一种简单的恢复文件的方法就是,在Unstaged Files 列 ...

  9. iOS10 UI教程基础窗口的内容与设置起始窗口

    iOS10 UI教程基础窗口的内容与设置起始窗口 iOS10 UI教程基础窗口的内容与设置起始窗口,本章我们从iOS10开发中UI的基础知识开始讲解,其中包括了窗口.视图以及UI层次结构和Views的 ...

随机推荐

  1. Vue属性绑定

    v-bind:属性动态绑定数据,简写: v-html:绑定html代码 {{}}:绑定数据,另一种v-text v-bind:class="{‘red’:isActive}"  : ...

  2. Windows Services windows服务如何删除服务

    如何删除服务 一.为何要删除服务: 1.当服务文件丢失时,在服务里还会显示. 2.现在好多都会有服务,你看那个不顺眼就可以把它干掉.前提是不用的软件. 二.使用: 使用sc.exe 这个是window ...

  3. NSNumber数字

    前言 将基本数据类型包装成 OC 对象 1.NSNumber 与 基本数据类型 的相互转换 // 基本数据类型 转 NSNumber // 对象方法,将整形数据转换为 OC 对象 NSNumber * ...

  4. Python字典基础知识补充

    1.添加键值对 #!/usr/bin/env python i1 = {'k1':'cai' , 'k2':123} print(i1) i1['k3'] = 0 i1['k4'] = "r ...

  5. loj #6235. 区间素数个数 min_12.5筛

    \(\color{#0066ff}{ 题目描述 }\) 求 \(1\sim n\) 之间素数个数. \(\color{#0066ff}{输入格式}\) 一行一个数 n . \(\color{#0066 ...

  6. Jmeter 集成Excel读写接口参数返回值

    输入VIN然后获取返回值json 串,拼接非规则json 标题头 以下是返回的json串 { "error": "success", "result& ...

  7. for别名

    name:for(int i =0 ;i< a.length;i++){ System.out.println(i); for(int j =0;j<i;j++){ continue na ...

  8. Python条件与循环

    1.条件语句: 形式: if 判断语句 : 执行语句1elif 判断语句2: 执行语句2elif 判断语句3: 执行语句3#...else: 执行语句4    占位符 pass 2.循环语句 1.wh ...

  9. 读经典——《CLR via C#》(Jeffrey Richter著) 笔记_类型转换

    1. C# 不要求任何特殊语法即可将一个对象转换为它的任何基类型,因为向基类型的转换被认为是一种安全的隐式转换: 2. 然而,将对象转换为它的某个派生类型时,C#要求开发人员只能进行显示转换,因为这样 ...

  10. python模块之openpyxl介绍

    openpyxl模块是一个读写Excel 2010文档的Python库,如果要处理更早格式的Excel文档,需要用到额外的库,openpyxl是一个比较综合的工具,能够同时读取和修改Excel文档.其 ...