View on GitHub

Ment.Niu

To eke out a living Live is better than burning

Sublime下的Git部署与使用

Error ALL,因公司网络问题,我的github上的东西拽不下来也上传不上东西,因此,只能在线编辑,没有图片,还请见谅。

git部署:

我们上一篇文章已经讲述了git的使用方法,虽然说sublime的功能很强大,但是什么都不是完美的,git方面很多地方功能不是特别完善,所以我们上篇文章至关重要,因为大部门功能还是需要git bash来完成,如:创建/删除仓库,克隆仓库,回滚/撤销提交事件等,submile只是一个编辑器,我们不要把所有希望都寄予它,如果没有阅读上篇文章请点击: Esage Gitlab进行阅读。

我们使用Package Control组件进行安装git插件,打开install package控制台后,直接输入git就可以看到。
这个时候Sublime Text只是安装了git插件,但还不能使用git命令,需要在修改Sublimt Text针对git的配置文件 “Git.sublime-settings”,这个文件一般在你的sublime的菜单栏preferences下的package-settings中的git settings-user
在这个文件中加入如下内容:


{
  // if present, use this command instead of plain "git"
  // e.g. "/Users/kemayo/bin/git" or "C:\bin\git.exe"
  "git_command": "G:\Git\cmd\git.exe"
}

"git_command": "G:\Git\cmd\git.exe"指向的是你的git程序中的git.exe文件
到此为止,sublime上的git配置完成。

sublime(ST)使用:

首先在Sublime text 打开想要使用git同步的项目目录,我的是“D:\Workspace\git\SublimeGitTest”。
如果没有git同步的项目,请参照Esage Gitlab,因为在sublime上git没有remote和clone命令不能进行同步,需要git bash来辅助。

如果你是一个新的项目,请使用“Ctrl+Shift+p”打开命令窗口,输入“Git:init”来初始化git化境。 ST会让你选择需要初始化的Git目录,选择到你的工程目录即可。之后就可以正常的使用git命令了。

你可以使用Git:status来查看当前的状态。如果没有变动,ST无动作。

我们打开一个文件,进行修改,例如我们在README文件添加了“####sublime add ”,可以使用“Ctrl+Shift+p”打开命令窗口,输入“git diff”来查看修改:


git diff
    diff --git a/README b/README
    index 0a2c46f..8e3c707 100644
    --- a/README
    +++ b/README
    @@ -5,4 +5,5 @@ you want
     git rm --cached 
     fit reset.
     git status
    -####sublime add 
    \ No newline at end of file
    +####sublime add 
    +####
    \ No newline at end of file

修改了文件,接下来是用git:add命令添加新增加的文件:


git add
    + ALL FILES
    including untracked files

    +ALL FILES
    apart from untracked files

    ??README.md

如果你的“README.md”文件是新添加的,选择“including untracked files”,将新增加的README.md添加到更改当中。
如果你的“README.md”文件是原有的,就选择“???README.md ”,将修改添加到git缓存中。

"add"修改了文件,接下来是用git:commit命令添加新增加的文件:


git commit

      [ -m 你的提交注释]
      # sublime add
      # one
      # --------------
      # Please enter the commit message for your changes. Everything below
      # this paragraph is ignored, and an empty message aborts the commit.
      # Just close the window to accept your message.
      diff --git a/README b/README
      index 0a2c46f..8e3c707 100644
      --- a/README
      +++ b/README
      @@ -5,4 +5,5 @@ you want
       git rm --cached 
       fit reset.
       git status
      -####sublime add 
      \ No newline at end of file
      +####sublime add 
      +####
      \ No newline at end of file

使用git:commit,来提交更改。Sublime Text会自动跳出一个文本文件,你可以在文件的最上方输入这次更改的comments,然后直接关闭这个文件,就会出发commit操作。并且将你输入的comments座位-m的参数。 这个是非常方便的,比用命令行运行commit 用-m参数添加评论的方式要方便很多,而且可以随便修改。ctrl+w关闭文件的同时,commit操作自动触发。

理论上接下来的步骤应该是添加远程仓库(remote repository),而在Sublime Text中我始终没有找到这条命令,所以说我们要用git bash来执行。创建的一个同名的repository.
为了方便我们使用ST的时候直接打开一个仓库是最好的,步骤没有那么繁琐。

我们用git bash创建了仓库,然后回到Sublime Text,就可以使用Git:push命令来上传代码。
如果我们直接打开的git仓库就可以直接使用"git push"命令了。
但是奇怪的事情发生了,出现了错误:


git push
      fatal: No configured push destination.
      Either specify the URL from the command-line or configure a remote repository using

          git remote add  

      and then push using the remote name

          git push 

查了查,应该是没有设置宿主(master),但是ST git又不支持添加参数,所以还是只能回到git bash执行push命令。

查了查,应该是没有设置宿主(master),但是ST git又不支持添加参数,所以还是只能回到git bash执行push命令。

然后对文件再进行修改,再次尝试从ST,进行push。从add到commit到push,没有任何问题,竟然push成功了
原因是git bash上push一下git 已经记录了:


[
fatal: No configured push destination.
      Either specify the URL from the command-line or configure a remote repository using

          git remote add  

      and then push using the remote name

          git push 
]

所以在此提交,就OK,到此为止ST上的git就完成了。