Git 的基本操作

安装 Git

Linux 用户可以自行解决。

Windows 用户可以在这个网页上下载,要使用 Git 时,打开项目所在文件夹,右键菜单选择“Git Bash Here”,在弹出的控制台里操作,最好事先了解一下 Linux 的常用命令,这里不赘述。

设置身份

使用 Git 前,先要在控制台里输入:

git config --global user.name '你的用户名'
git config --global user.email '你的邮箱'

--global 表示这是全局生效的。这些只是用来标记你的身份,这里你可以随便填写。

创建仓库

要创建一个仓库很简单,在项目所在目录里,输入 git init 即可。输入 ls -a,你会看到文件夹里多了一个 .git 文件夹,这说明创建成功了,不要动它。

接着,输入 touch .gitignore,创建一个黑名单文件,写在里面的文件都不会被提交,格式示例如下:

*
!/.gitignore
!/res/
!/res/**
!*.py

* 是通配符,这里我先把所有文件都忽略了。! 表示取消忽略,所以我把项目根目录(用 / 开头表示)下的 .gitignore 文件和 res 文件夹都取消忽略。** 也是通配符,但是它和 * 的区别在于,** 可以匹配多重目录,比如 /a/**/d.txt 可以匹配 /a/b/c/d.txt,但是 /a/*/d.txt 不行。当然,所有 .py 文件也得提交。需要注意的是,!/res/ 这一行不能省略,因为只有文件夹不被忽略,文件夹里面的文件才可能不被忽略,这听起来有些绕,你可以做个实验看看。

提交修改

接着,我们来添加一些文件,如下图所示:

res 文件夹里面有一个 img 文件夹,img 文件夹里面有一个 icon.png 图片。

然后,我们输入 git add . (一个点表示当前目录),再输入 git status,你应该会看到如下输出:

On branch master

No commits yet

Changes to be committed:
  (use "git rm --cached <file>..." to unstage)

        new file:   .gitignore
        new file:   res/img/icon.png
        new file:   test.py

这说明这些文件已经被提交到了“暂存区”。要完成最终提交,还必须输入 git commit -m <更改说明>。比如说,这里我输入 git commit -m "create files",你会看到以下输出:

[master (root-commit) eebe433] create files
 3 files changed, 5 insertions(+)
 create mode 100644 .gitignore
 create mode 100644 res/img/icon.png
 create mode 100644 test.py

这样我们的文件就正式被提交了。之后有什么修改,都可以像这样提交。

后悔药

版本控制系统的作用,就是可以回退修改。要撤销修改,我们先得知道之前修改了什么,可以输入 git log --pretty=oneline,你会看到许多这样的输出:

eebe433d66a5ddc26a34ceaa92e71aa7266cb514 (HEAD -> master) create files

每一行都代表一次提交的修改,前面的数字是这次修改的唯一编号。我们只需要输入 git reset --hard <编号> 即可。我们没必要输入所有的编号,只需要输入前几位即可,Git 会自动帮我们匹配,比如可以输入 git reset --hard eebe433d。当然,输入的位数也不能过少,否则可能匹配到多个修改。你也可以输入 git reset --hard HEAD^^,表示回退到上上一次修改。如果要回退到前 100 次修改,输入 100 个 ^ 有点夸张,所以可以输入 git reset --hard HEAD~100。

只要你知道修改的编号,想要跳转到哪里都可以,所以,回退后我们也可以撤销回退。

有时候,我们 add 修改完的文件之后,又后悔了,想要把它从暂存区移除,这时,可以输入 git restore --staged <文件名>,如果你连修改都不想修改,想要让修改后的文件回到最初的样子,可以输入 git restore <文件名>。

更多内容

如果你是一个单打独斗的编程初学者,只是写一些练习程序,这些功能已经足够你使用了,但是,如果你想要多人合作,或者参与开发大型开源项目等,还需要了解远程仓库、分支等内容。网上关于这些的资料还有很多,你可以自己学习。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值