学习笔记-段玉磊
Github
Github 命令
写这篇文章主要写一下如何运用终端命令,进行Git的配置以及使用,由于本人我不太习惯使用图形IDE,效率没有命令行高,我还是推荐使用命令行进行Git的使用。
简单介绍
简要说一下Git,Git只是一个版本控制工具,举例来说,我之前写一个多核归并算法,将文件保存命名为MergeSort.c,由于发现一个Bug,将一段段代码注释,显得很糟乱,之后就把自认为错误的代码删掉,保存后,发现之前删掉的代码没有错误,想返回的时候却没有办法回去了。这就要用到Git了。
如果想要删代码的时候,先把代码上传一下,通过 git push
,之后就算把代码全部删掉,也可以通过Git返回上一个时间点,如果修改多次,返回第一次修改的时间点的代码,也可以顺利的看到。
由于Git需要一个服务器,进行上传或者下载代码,因此,Github就是一个免费服务器,注册账户后就可以通过Github的IDE管理代码,并且清晰看到每个git commit
后显示修改的代码。
GitHub的配置
安装并且配置 Git
首先去官方网站下载GitHub App,我是MAC用户,MAC的GitHub 选项中可以自动安装 Git
和 osxkeychain helper
,如果是Linux可能需要手动安装 Git
和 osxkeychain helper
.
如果没有安装Git,就通过官方下载Git版本管理工具,下载并且安装最新版本的Git.
安装好后通过以下命令来配置Git。下面的命令是我用我的用户名和邮箱进行设置。只配置一次就够了,当然不会每次配置用户名密码这么麻烦。
$ git config --global user.name "YuLei"
$ git config --global user.email "suiyun@me.com"
如果是MAC,利用IDE自动装好Git帮助选项,就不需要通过命令行安装osxkeychain
,上面命令配置好后,安装osxkeychain
,通过以下命令:
$ git credential-osxkeychain
# Test for the cred helper
git: 'credential-osxkeychain' is not a git command. See 'git --help'.
$ curl -s -O
https://github-media-downloads.s3.amazonaws.com/osx/git-credential-osxkeychain
# Download the helper
$ chmod u+x git-credential-osxkeychain
# Fix the permissions on the file so it can be run
$ sudo mv git-credential-osxkeychain
"$(dirname $(which git))/git-credential-osxkeychain"
# Move the helper to the path where git is installed
Password: [enter your password]
$ git config --global credential.helper osxkeychain
# Set git to use the osxkeychain credential helper
这样就配置好GitHub了。
GitHub 的基本使用
首先通过Git,新建一个项目,并且提交到Github上面去,现在IDE创建一个repository,然后找到giturl,通过 git clone
下载到本地。
$ git clone https://github.com/dyulei/blog.git
# 克隆到本地,但是无法上传更改,需要权限
$ mkdir Github & cd Github
# 创建在本地管理远程项目的目录
$ touch README.md
# 创建一个文件,由于Github需要一个说明文件
$ git add .
# 增加要同步的目录中的所有文件
$ git commit -m 'first commit'
$ git commit -a
# -m是手动添加, -a 自动添加注释上传更新
$ git remote add Blog https://github.com/dyulei/blog.git
# 远程服务器别名:Blog 上传的地址:https://github.com/dyulei/blog.git
$ git pull -u Blog master
# 将服务器数据下载到本地文件夹
$ git push -u Blog master
# 将服务器数据上传到远程服务器
$ git rm README.md
# 从本地库中删除文件
关于分支版本的操作,创建并且合并分支,由于Git很多时候是一个团队在用,每个人都负责一小部分,最后合成一大部分,所以就要通过分支控制,最后进行合并。当然下面的代码是最容易的部分,GitHub具有相当强大的功能在分支版本控制上面。
$ git branch
# 显示当前分支是master
$ git branch new-feature
# 创建分支
$ git checkout new-feature
# 切换到新分支中
$ git add sort.c
$ git commit -a
$ git push origin new-feature
# 将分支结构提交到远程服务器,但是没有和主干进行合并
$ git checkout master
# 切换的主干中去
$ git merge new-feature
# 把分支合并到主干中去
$ git branch
$ git push
# 此时主干和分支已经合并
About Me
微博
:@Levi-小磊邮箱
:suiyun@me.comGitHub
: https://github.com/dyulei