GitHub三分钟教程
机缘巧合之下,我开始使用 GitHub ,但事实上,刚刚入门的我不知道如何才能使 GitHub 发挥他的全部功能。不久之前,我偶然听了李福斯先生对 GitHub 的介绍,受益匪浅。
机缘巧合之下,我开始使用 GitHub ,但事实上,刚刚入门的我不知道如何才能使 GitHub 发挥他的全部功能。不久之前,我偶然听了李福斯先生对 GitHub 的介绍,受益匪浅。
简单的来说, Git 是一个分布式的版本控制系统。顾名思义,在你开发软件的时候(特别是在多人协作一个项目时),它将会自动帮你实现程序以及版本的更新。这意味着你不必每次都手动地将自己修改的内容同步到云端。这些工作都可以由 Git 在适当的时候自动完成。这样既能避免手动同步的麻烦和风险,更能为软件开发人员省下大量时间。
一、安装与配置
虽说Git 预装在所有 Mac 和 Linux 计算机中,但预装的 Git 无一例外都版本陈旧。所以,无论你是使用Mac , Linux 还是 Windows ,都必须自己安装 Github。
安装过程在这里就不再赘述。安装完成之后,最重要的一步当然是配置 Git。
先执行以下命令:
$ git config --list
这条命令将会读取并显示 Git 的配置文件,包括个人身份信息和配色等各方面内容。
使用”git config”命令,你可以修改 Git 的配置文件来打造属于你的独一无二的工作环境。但首先,你必须配置你的用户昵称和邮箱。因为这些信息会嵌入到你提交的所有文件中。
执行以下命令配置,请注意,这条命令只能执行一次,因为 Git 将一直使用该信息来处理你在系统中所做的一切操作。如果你希望在一个特定的项目中使用不同的名称或e-mail地址,你可以在该项目中运行该命令但不附加 –global 选项。
$ git config --global user.name [name] $ git config --global user.email [em]
二、创建副本
在开始编辑你的项目之前,你需要从 Github 上面把你托管在云端的项目抓取到本地。
执行以下命令:
$ git clone [url]
这将在您的系统上创建与 GitHub 上 Git 储存库相匹配的文件夹结构。
GitHub 的提示:在一个库中,如果你按住“t”键,你将进行过滤搜索,用来查找与您搜索的文件名匹配的文件。因为 GitHub 是一个文本编辑器,所以你可以很方便的在其中改动内容并且直观的看到改变的结果。
在做出正式改变之前,最好先新建一个“分支”并在分支中工作。使用分支意味着你可以从开发主线上分离开来,然后在不影响主线的同时继续工作。这将有利于你对一个大型项目做一些小的改动。
执行以下命令:
$ git branch feature/add-subtraction $ git checkout feature/add-subtraction
这将创建一个新的分支,在分支上工作将允许你在本地迭代局部程序,而无需担心搞砸主线。如果你搞砸了,只需要放弃该分支,并重新创建一个基于主线的分支即可。
三、做出改变
如果想要知道当前目录所有还没有被git管理的文件,或者是被git管理且被修改但还未提交的文件,那么执行以下命令。
$ git status
你可以通过执行以下命令提交更改:
$ git commit src/main/java/com/github/Calculator.java -m "added subtraction"
该命令用于在沙盒提交更改,并同时附加“添加去除(added subtraction)”的消息。必须记住的是,这种变化仅仅是在本地机器上做出变更,你必须把变更推送到 GitHub 上。
要提交变更,执行以下命令:
$ git push origin feature/add-subtraction
现在你会看到一个新的分支列表,它列出了原有分支的增减变化。最后,如果你如果想把这些提交给管理员,你需要发送一个“拉取”的请求,让你的分支被拉取到主分支上。你发送的拉取请求可以通过在 GitHub 上启动一个关于在这个程序的特征会话来完成。
你还可以用 GitHub 来做很多事情,现在我已经准备好开玩一些新项目了!






















发表回复