[Git]Git教程之msysgit(命令行形式)

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/express_yourself/article/details/55051681

步骤一:在GitHub新建托管项目

1-1. 要托管到github,那你就应该要有一个属于你自己的github帐号 github官网:https://github.com/

    在地址栏输入地址:github.com 
    填写用户名、邮箱、密码 
    点击Sign up即可简单地注册

1-2. 完成注册,进入github平台, 点击new repositories 新建一个新项目(你也可以加入到一个已有的项目)

new repositories

1-3. 新建项目的操作,其实很简单,输入项目名就可以直接Create了

Create

1-4. 新建项目创建完成后,跳转到这个页面,点击右边栏的剪切板图标,复制记录下你的项目地址。

copy

步骤2 Git教程

首先你要在本地计算机中安装一个git客户端。(你可以直接使用GitHub客户端,也可以用其他)

因本人使用的是msysgit,所以这里以msysgit作为介绍(msysgit同样也是目前最为广泛及实用的工具之一)。

msysgit下载地址:https://git-for-windows.github.io/

下载并安装最新版本的msysgit
安装完成后,进入到要托管的项目根目录,
右键启动Git Bash命令行

2.1 初始化

下面的终端(terminal)运行在 octobox 文件夹下。初始化仓库,可以运行如下指令:

git init

2.2 检查状态

干的好!正如 Git 刚刚告诉我们的,现在 octobox 目录下的 /.git/ 里面有一个空仓库。这个仓库在 Git 操作的地方是隐藏目录。

接下来,让我们输入 git status 命令来查看我们的项目现在是什么状态:

git status 

2.3 添加和提交

我为你在 octobox 仓库下创建了一个 octocat.txt 文件(正如你在浏览器的下面看到的)。

你应该再次运行 git status 命令来查看仓库的状态发生了怎样的变化:

git status

2.4 添加变化

嗯,看起来我们的 Git 仓库工作的还不错。注意到 Git 提示 octocat.txt 是未监听(untracked)的吗?这意味着 Git 发现 octocat.txt 是一个新文件。

为了告知 Git 开始监听发生在 octocat.txt 上的改变,我们首先需要使用 git add 把它添加到暂存区。

git add octocat.txt

2.5 检查改变

干的不错!Git 现在正在监听 octocat.txt 文件。我们再来运行一次 git status来看一下现在的状态。

git status

2.6 提交

注意到 Git 提示 changes to be committed 了吗?现在文件正处于暂存区(Staging Area),并没有在我们的仓库里面。在存储在仓库之前,我们可以给暂存区添加文件或者从暂存区移除文件。

通过运行 commit 命令,我们可以存储暂存区的改变并且给做出的改变添加一个描述。我们现在就来运行:

git commit -m "Add cute octocat story"

2.7 添加所有改变

棒极了!如果你想添加很多同种文件类型的文件,你可以是使用通配符(wildcards)。注意,我添加了很多 .txt 文件到下面的目录。

我把一些 .txt 文件放在了 octofamily 目录里面,另外一些放在了 octobox 根目录里面。幸运的是,我们可以通过一个通配符和 git add 来添加所有的新文件。不要忘记引号!

git add '*.txt'

2.8 提交所有的改变

不错,你已经把所有的文本文件(text files)都添加到了缓存区。随时运行 git status 来查看你要提交的内容。

如果看起来没问题,那就运行:

git commit -m 'Add all the cotocat txt files'

2.9 历史

我们已经提交了几次了。现在我们来看一下我们都改变了些什么。

我们很幸运,有一个 git log 指令。可以把Git’s log想成是一个能按照提交顺序记录提交的改变的日志。现在试着运行它吧:

git log

2.10 远程仓库

做的不错!现在我们就去新建一个新的空 GitHub 仓库让你在 https://github.com/xiaololo/myTest.git… 来使用 Try Git。为了把本地仓库推送到 GitHub 的服务器,我们需要添加一个远程仓库。

继续运行带有以下选项的git remote add:

git remote add origin https://github.com/xiaololo/myTest.git

2.11 远程推送

当一切就绪之后,push 命令用来告诉 Git 把我们的提交存放在什么地方。现在我们一切都准备好了,那么把我们本地的改变推送到 GitHub 上面的源仓库吧。

远程仓库的名字叫做 origin,默认本地分支的名字是 master。-u 用来告诉 Git 记住参数,这样的话,下一次我们只需要简单的运行 git push就行了,剩余的事情 Git 知道该怎么做。接下来就是推送它!

git push -u origin master

2.12 远程拉取

让我们假装已经过了一段时间。我们邀请了一些人来我们的 GitHub 项目,他们拉取了你的改变,提交并且推送了一些东西。

我们可以检查GitHub仓库的改变,通过执行命令来拉取新的改变:

git pull origin master

2.13 差异

哦,看起来 octocat family 有一些补充和修改,我们可以通过 git diff 来看一下它跟我们最后一次提交有什么不同。

在这种情况下,我们想得到的是与最近一次提交的不同。最近一次提交我们可以参考使用 HEAD 指针。

2.14 暂存区差异

diff 另外一个很棒的用途是查看被暂存文件的改变。记住,暂存文件是那些我们告诉 git 准备提交的文件。

Let’s use git add to stage octofamily/octodog.txt, which I just added to the family for you.

我们使用 git add来暂存刚刚添加到 octofamily 的octofamily/octodog.txt。

git add octofamily/octodog.txt

2.15 暂存区差异(续)

好,现在继续运行 带有 --staged 选项的 git diff 来查看你刚刚暂存的文件的改变。你会看到 octodog.txt 被创建。

git diff --staged

2.16 重置暂存

现在 octodog 也是家庭的一部分了,octocat 很伤心。因为我们爱 octocat 胜过爱 octodog,所以我们移除 octodog.txt 来让ocotocat开心。

你可以使用 git reset 命令来取消暂存(unstage)。删除 octofamily/octodog.txt :

git reset octofamily/octodog.txt

2.17 撤销

git reset 可以很好的完成撤销暂存octodog.txt,但是你会注意到它仍然在那里。它只是不会再被暂存了。如果我们能够回到 octodog 到来并且破坏聚会之前,那就太好了。

通过git checkout -- <target> 命令文件可以回到最后一次提交的时候。让我们继续,扔掉 octocat.txt 最后一次提交之后的改变

git checkout -- octocat.txt

2.18 分支

当开发者为一个特性或者 bug 工作的时候,他们通常会创建一个代码的副本(又称:分支)为了能够分别提交。然后,当工作完成之后他们可以把这个分支合并到主 master 分支。

我们想要去除所有讨厌的 octocats,我们要创建一个 clean_up 分支,在这个分支上我们可以继续工作。

git branch clean_up

2.19 切换分支

棒极了!现在如果你输入 git branch 来查看分支,你会发现有两个本地分支:一个叫做 master 的主分支,还有你的新分支 clean_up。

你可以通过 git checkout 命令来切换分支。现在尝试切换到 clean_up 分支。

git checkout clean_up

2.20 移除所有东西

好,你现在正处于 clean_up 分支上。最后你可以使用 git rm 命令来移除所有讨厌的octocats,这个命令不仅能能从磁盘上删除真正的文件,还能把缓存中的文件也删掉。

如果你想使用通配符来一次性获取所有的 octocats,那么请运行:

git rm '*.txt'

2.21 提交分支的改变

你已经移除了所有的猫,那么现在你需要提交改变。

运行 git status 来检查你准备提交的改变。

git commit -m "Remove all the cats"

2.22 切回 master 分支

好的,你已经完成了 bug 修复,现在需要切换为 master 分支,因此你通过复制或者合并把 clean_up 分支上的改变放到 master 分支上。

现在切换为 master 分支:

git checkout master

2.23 准备合并

把 clean_up 分支上的改变合并到 master 分支的时刻到了。深吸一口气,这并不可怕。

现在我们处于 master 分支上面,因此我们只需要告诉 Git 把 clean_up 合并到 master 分支:

git merge clean_up

2.24 保持干净

恭喜你!你已经成功完成了第一次 bug 修复和合并。接下来要做的是把自己清理干净。因为你已经完成了 clean_up,所以你不再需要它了。

你可以使用 git branch -d 命令来删除一个分支。现在就来删除一个试试:

git branch -d clean_up

2.25 最后的推送

现在我们到了最后一步。我很自豪你能走到这里,学习 Git 对你来说一定很棒。你现在要做的就是把你工作目录里的所有东西都推送到远程仓库中去,你已经完成了所有事情:

git push

猜你喜欢

转载自blog.csdn.net/express_yourself/article/details/55051681
今日推荐