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. 让 Winform 窗口悬浮的简单方式

    很多次设置这个 TopMost 属性会莫名的不起作用,有时又可以.一直在想是为什么会这样? 后来多次尝试,发现这个属性必须在窗体某些其他属性后设置,比如在 Height.Width 这样的属性后. 看 ...

  2. Oracle使用PARTITION BY 实现数据稠化报表

    所谓的数据稠化,就是补全缺失的数据.因为在数据库表中,存储的数据经常是稀疏的(sparse data),也就是不完整的.比如记录一个员工每个月的销售额,用这么一个销售表来记录:SalesRecord( ...

  3. luogu2513 逆序对数列

    我们令\(f[i][j]\)表示\(i\)的全排列中,逆序数为\(j\)的个数. 我们考虑在\(i-1\)的排列中插入\(i\).\(k\)是这次更新会导致增加多少逆序数. 则\(\begin{ali ...

  4. [JLOI2010]冠军调查 BZOJ2768 最小割

    题目描述 一年一度的欧洲足球冠军联赛已经进入了淘汰赛阶段.随着卫冕冠军巴萨罗那的淘汰,英超劲旅切尔西成为了头号热门. 新浪体育最近在吉林教育学院进行了一次大规模的调查,调查的内容就是关于切尔西能否在今 ...

  5. WebForm与MVC混用 (转)

    http://blog.csdn.net/leftfist/article/details/11591231

  6. kindedtor的基本使用

    首先需要进入官网下载kineditor相关文件: 然后写代码: <!DOCTYPE html> <html> <head> <meta charset=&qu ...

  7. react PropTypes 与 DefaultProps

    PropTypes 与 DefaultProps import React ,{ Component } from 'react'; import PropTypes from 'prop-types ...

  8. visio 使用技巧汇总

    1.visio中图形旋转任意角度的方法 视图----任务窗格----大小与位置----角度 2.箭头形状 更多形状---流程图----箭头形状 3.汇制虚线框 从基本形状中拖出一个矩形,右击矩形,选择 ...

  9. mysql 配置utf8 编码,支持 emoji 方法!!!

    utf8_general_ci 已经 过时了...请以后用mysql 考虑使用 utf8mb4, utf8mb4_unicode_ci!!! 兼容性更好. mysql的utf8编码的一个字符最多3个字 ...

  10. 读经典——《CLR via C#》(Jeffrey Richter著) 笔记_对象的相等性和同一性

    [重写Equals注意的事项] 1. Equals 必须是自反的:--x.Equals(x)肯定为 true 2. Equals 必须是对称的:--x.Equals(y)肯定返回与y.Equals(x ...