Git初学笔记

Git学习笔记

2017/6/16

这次的笔记主要是笔者在观看莫烦的Git教学视频中进行记录的

一 创建git仓库

首先介绍一下如何创建一个git仓库


  1. 首先需要选择一个文件夹作为你的仓库。
  2. 设置git的全局设置:
    git config --global user.name "chencheng"
    git config --global user.email "chenchengsmail@qq.com"
    设置使用者的名字和email之后,在每次提交的时候就会显示该用户提交的。
  3. 在文件夹目录下初始化该仓库
    git init
    这样该文件夹就变成了文件管理库
    并且在该文件夹下面会出现一个.git文件夹

(由于是“.”开头的文件夹所以文件夹是隐藏显示的,使用ls -a来进行所有文件的显示,注意不要手贱去修改文件夹里面的文件)

  • 使用git status来查看仓库的状态,由于我们没有提交任何东西到仓库,所以里面是没有东西的。(如果有的时候嫌输出的字太多,使用git status -s可以查看简略的参数状态)

二 在仓库中添加文件

如何在新建好的git仓库中新增文件


  1. 假如这时候在仓库中添加demo.py这个文件,那么再使用git status,此时便会发现仓库里面提示说有文件没有被添加到git管理库中去。
    这个时候使用git add demo.py将demo.py这个文件添加到仓库中去。
    (Tips: 如果想一次性将文件夹中所有未被添加的文件都添加进行,使用git add .来添加所有)

  2. git_
    下面使用一张官网的图片来对整个过程进行介绍:
    • 首先仓库中的文件刚开始被新建出现之后都是处于Untracked状态(这时候git追踪不到的状态),此时我们要将这些新的文件都进行add到staged状态中去。
    • 文件被add到了staged状态之后就可以被跟踪修改也可以被提交了。
    • 要将文件从staged状态下commit上去则使用git commit -m "create demo.py"即可。

这里的-m后面加上的字符串代表的是本次提交的信息。

三 查看仓库里面提交的信息

如何查看已经提交之后的信息

  1. 提交了之后,使用git log命令来查看仓库里面的信息。会发现我们上一次提交的文件信息。
  2. 如果对提交的文件进行修改然后再使用git status查看就会出现提示说文件处于修改状态,这就是git跟踪到了文件已经被修改了。这时候如果我们要提交修改,则跟上面步骤一致,先使用git add demo.py将变化的文件add到staged状态中去,然后再使用git commit -m "change 1"来提交上去。这个时候再使用git log命令来查看提交的信息就会发现现在多了一条刚刚提交上去的信息。

四 查看文件修改情况

如何查看修改文件的情况

  1. 再对同一文件进行修改,使用git status -s命令来对修改内容进行查看,此时文件又会处于修改状态,此时使用命令git diff可以查看到文件的大致修改情况。
    使用git add .将所有的变化都add上去变成staged状态,此时如果要再查看add之后的变化信息,则要使用git diff --cached来进行查看。这个时候再将文件进行修改,则会出现两个modified状态,一个使add上去的绿色modified,一个是红色的没有进行提交的modified状态。此时如果还要对变化进查看则需要使用到git diff HEAD,这样对两个文件的变化都会进行显示。同理可以查看某个状态的变化情况。

五 回到从前的版本状态

当我们后悔提交之后,如何回到之前commit的状态下的文档情况

  1. 先可以查看一下提交的信息,使用git log --oneline来进行缩写显示。
  2. 如果这个时候我们发现上一次的提交有点问题(并且文件名也被我们改变了),希望重新提交上一次的东西,但是又不会改变整体的log状态,这个时候使用git commit --amend --no-edit这样就可以使用这一次的提交来代替上一次的版本而不是多出一次log(可以看到这个时候的ID变了)
  3. 如果更改后add到了staged状态,但是发现还想要继续进行修改再提交,那么这个时候可以使用git reset demo.py来将文件从staged状态变成modified状态从而可以继续进行修改。
  4. 如果希望回到之前提交的版本中去,或者是上一个版本中的内容被意外删除了,这个时候就可以使用git reset --hard HEAD来对上一个版本的内容进行恢复。(比如我提交了demo.py文件,但是我不小心将这个文件删除了,那么这个时候我使用这个命令就会将已经删除了的文件恢复出来。)
  5. 如果我要回到之前提交的前两次内容的情况下,我可以使用git reset --hard^^来回到上两次提交的版本情况中去。
    如果要回到前100次提交的情况同理,使用git reset --hard~100即可;
    此外还可以使用特定的版本号来进行跳到特定版本情况中去,使用git reset --hard 2a23423即可跳到版本号为2a23423的版本中去。这里不需要看git log中那一长串的版本号,而只需要使用git log --oneline中较短的版本号即可。
  6. 这个时候我们反悔了,而这个时候使用git log又看不到我们前面最先前的版本号了,那么这个时候我们就需要使用到git reflog来查看之前提到的所有版本,记下特定的版本号(假设为xxxxxxx)之后使用git reset --hard xxxxxxx然后再跳到想跳到的版本中去即可。
    又或者是跳到对应的head指针中去使用git reflog查看当前指针指向的位置(假如我们此时需要跳到HEAD@{1})然后再使用 git reset --hard HEAD@{1}即可跳到该指针指的的位置中去即可。

六 删除文件

如果想要删除文件(想删除)或者是不小心删除了文件(想恢复)


  1. 在版本库中,有一些文件需要删除,那么可以直接删除本地文件。这个时候通过使用git status查看状态就能看到git发现了版本中的一些文件被删除了。这个时候使用git rm 文件名即可将版本库中的文件进行删除,然后再进行提交git commit -m "delete some checkfile"即可完成删除。
  2. 另外一种情况,本地的文件并不想进行删除,而是误删的。这个时候可以使用git checkout -- 文件名即可轻松将误删文件恢复到最新的版本。

换句话说,只要你先前的文件都进行了commit,那么久不用担心文件被误删的情况了O(∩_∩)O

七 将仓库上传到Github

假设要将本地仓库中的内容上传到Github上去


  1. 首先在Github上新建一个仓库,新建之后又命令提示如何将当前本地的仓库提交到网络上的Github仓库中去(大概长这样)git add origin https://github.com/Cheneng/Pyplot.git后面会提示填写Github信息。
    然后使用git push -u origin master即可将本地的master分支上传至Github仓库中去。同理如果有不同的分支名字,则使用git push -u dev即可将dev分支上传。
  2. 本地的仓库上传之后,如果更改了本地的代码并且commit了之后,想要同步仓库至Github上去,此时只需要直接使用git push -u origin master即可直接推送上去。

简而言之,只需要关联一次Github,后面再上传就只需要使用git push -u origin 分支名即可将当前本地仓库中的内容上传到Github上的分支中去。

关于分支等内容,因为本人还没有进行使用,因而还没有去学习其他方面的知识。对于其他的更多功能,可以在需要使用的时候再去学习即可。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值