使用git完成基本的版本控制

2 篇文章 0 订阅
1 篇文章 0 订阅

Git为目前世界上先进的分布式版本控制系统。学习git是为了维护代码的版本,希望网络上有一份永久的存储,这样我们可以将代代码退回到历史版本,和别人协作。

配置

用户信息

git第一件事情设置自己的用户名与邮件地址。Git的提交会使用这些信息,并且它会写入到你的每一次提交中,不可更改:

git config --global user.name “zhangsan”
git config --global user.email 邮箱

如果使用了 –global 选项,那么该命令只需要运行一次,因为之后无论你在该系统上做任何事情, Git 都会使用那些信息。当你想针对特定项目使用不同的用户名称与邮件地址时,可以在那个项目目录下运行没有 –global 选项的命令来配置。

文本编辑器

配置默认文本编辑器,当Git需要你输入信息时会调用它,如果未配置,git会使用操作系统默认的文本编辑器,通常是Vim。如果想使用不同的编辑器,如Emacs

git config --global core.editor emacs

检查配置信息

git config –list 命令来列出所有Git当时能找到的配置。
git config:检查git的莫一项配置。

获取Git仓库

说明

有两种取得 Git 项目仓库的方法。 第一种是在现有项目或目录下导入所有文件到 Git 中; 第二种是从一个服务器克隆一个现有的 Git 仓库。

    //在当前目录新建一个Git代码库
    $ git init
    //新建一个目录,将其初始化为Git代码库
    $ git init [project-name]
    // 下载一个项目和它的整个代码历史
    $ git clone [url]

一般来说,我们会用远程仓库来对代码进行备份,同时便于多人协作。可以到github,oschina或者码市上去注册一个帐号并建立一个远程仓库。

个人解读:远程库是本地库的镜像,本地库是远程库的镜像。

新增(修改)一些文件并跟踪

跟踪文件

版本控制的最大作用就是记录文件的历史状态,以便随时可以回退到历史版本。如果没有版本控制,虽然编辑器都有ctrl+z功能,但是次数有限,且编辑器重启后,这些暂时记录就丢失了。把文件纳入版本控制之下。git中这个动作叫做跟踪文件.

git add开始跟踪一个文件

    # 跟踪一个具体的文件
    git add <filepath>
    # 跟踪所有文件
    git add .

工作目录下的每一个文件都不外乎这两种状态:已跟踪或未跟踪。 已跟踪的文件是指那些被纳入了版本控制的文件。工作目录中除已跟踪文件以外的所有其它文件都属于未跟踪文件(废话)。 初次克隆某个仓库的时候,工作目录中的所有文件都属于已跟踪文件,并处于未修改状态.

忽略某些文件

我们可以创建一个名为 .gitignore 的文件,列出要忽略的文件模式

    *.class  # 忽略clsss文件
    # Mobile Tools for Java (J2ME)
    .mtj.tmp/
    # Package Files #
    *.jar   #忽略jar包
    *.war
    *.ear
    # eclipse files #
    .project
    .classpath
    .settings/

GitHub 有一个十分详细的针对数十种项目及语言的 .gitignore 文件列表,你可以在 https://github.com/github/gitignore 找到它.

检查当前文件状态

要查看哪些文件处于什么状态,可以用 git status 命令.status命令不仅列出了文件状态,还对下一步应该使用的命令给出了提示.

提交

git commit
git commit -m “第一次提交” 写注释

git 状态

Git 有三种状态,你的文件可能处于其中之一:已修改(modified)、已暂存(staged)和已提交(committed)。

已修改表示修改了文件,但还没跟踪,如新增的文件和刚修改过的文件。
已暂存表示对一个已修改文件的当前版本做了标记(git add)。
已提交表示数据已经安全地保存在本地数据库中(git commit)。

Git 项目的三个工作区域的概念:工作目录、暂存区域以及Git仓库。
工作目录是放在磁盘上供你使用或修改的文件及目录总和。
暂存区域是一个文件,缓存文件快照,有时候也被称作“索引”,不过一般说法还是叫暂存区域。
Git仓库是 Git 用来保存项目的元数据和文件快照的地方,记录了所有历史提交。

基本的 Git 工作流程如下:

在工作目录中修改文件。
暂存文件(git add),将文件的快照放入暂存区域。
提交更新(git commit),找到暂存区域的文件,将快照永久性存储到 Git 仓库。
PS:文件快照必须先经过暂存区,才能到仓库区
git add .
git commit -m "第一次提交"

查看提交历史

git log

git log 有许多选项可以帮助你搜寻你所要找的提交, 接下来我们介绍些最常用的。

一个常用的选项是 -p,用来显示每次提交的内容差异。 你也可以加上 -2 来仅显示最近两次提交
如果你想看到每次提交的简略的统计信息,你可以使用 –stat 选项.
另外一个常用的选项是 –pretty。 这个选项可以指定使用不同于默认格式的方式展示提交历史。 这个选项有一些内建的子选项供你使用。 比如用 oneline 将每个提交放在一行显示,查看的提交数很大时非常有用。 另外还有 short,full 和 fuller 可以用,展示的信息或多或少有些不同,请自己动手实践一下看看效果如何。

移除文件

git rm
如果删除之前修改过并且已经放到暂存区域的话,则必须要用强制删除选项 -f

同步远程仓库

git push 推送是在远程仓库建立本地仓库的副本,便于别人拉取。
如果本地库和远程库一样,会得到Everything up-to-date提示.

git pull 用远程仓库更新本地仓库以获得协作者推送的最新的变化.
如果远端没有更新,会得到Already up-to-date.提示。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值