Git学习

       时而觉得有些知识学完后感觉心里很没底,就好像没学一样,思来想去,可能是我没有把知识转换为自己的,即没有做好消化吸收,没有把输入转化为输出。为此,开搞博客,记录下学习中的所思所获所悟。
       现在,就以Git学习为开篇吧!
       参考廖雪峰前辈的史上最浅显的Git教程,下面记录常用命令、学习过程中发现的问题及解决问题的方法,方便遗忘时快速熟悉。

Git简介

Git是目前最优秀的分布式版本控制系统,下表是Git与常见的集中式版本控制系统(如CVS、SVN)的主要区别。

GitCVS、SVN
分布式集中式
支持离线必须联网
安全性高安全性低
强大的分支管理工作在一条分支

安装Git

目前的工作环境是Windows,为便于更换工作环境后能快速查出新环境下Git的安装,在此列出三种平台的Git安装。

  • Windows
    在Git官网上下载安装程序,按默认选项安装,安装完成后在开始菜单中找到"Git"->“Git Bash”,打开后弹出类似命令行窗口,说明Git安装成功!
  • Linux
    可以试着输入git,查看系统是否已安装Git,若未安装,如果是Debian或Ubuntu,通过sudo apt-get install git可以直接完成Git的安装!
  • Mac
    推荐方法是:直接从App Store安装Xcode,运行Xcode,选择菜单"Xcode"->“Preferences”,在弹出窗口中选择"Downloads"->“Command Line Tools”->"Install"即可!
    以上三种平台,安装完成后,还需配置信息。在命令行中输入:
 $ git config --global user.name "Your Name"
 $ git config --global user.email "Your email"

其中Your Name与Your email是你的用户名与email地址,git config命令的--global参数表示本机器上所有的Git仓库都会使用该配置。

创建版本库

首先,在合适地方创建空目录,Windows下最好确保目录名不含中文

$ mkdir myGit
$ cd myGit

其次,把该目录变为Git可以管理的仓库

$ git init

再次,把编写的文件放在myGit目录下(或子目录),从而开始添加文件到Git仓库中

$ git add readme.txt
$ git commit -m "wrote a readme file"

远程仓库

  1. 创建SSH Key。Windows下打开Git Bash,创建SSH Key
$ssh-keygen -t rsa -C "youremail"
  1. 登录GitHub,打开"Account settings"->“SSH Keys”->“Add SSH Key”,填上任意title,在Key文本框中粘贴id_rsa.pub文件的内容->“Add Key”

常用命令

下面是使用Git时常用的一些命令,以备遗忘时查阅。

  • git status查看仓库当前状态
  • git diff查看对文件的修改内容
  • git add filename.xxx将文件修改添加到暂存区stage中
  • git commit -m "statements"一次性把暂存区的修改提交到分支
  • git log (--pretty=oneline)可以查看提交历史,显示从最近到最远的提交日志,以便确定要回退到哪个版本
  • git reset --hard HEAD^把当前版本回退到上一个版本,上上个版本是HEAD^^,往上100个版本写成HEAD~100
  • git reset --hard commitID指定回到某个版本
  • git reset HEAD <file>可以把暂存区的修改撤销掉,重新放回工作区
  • git reflog用来查看命令历史,以便确定要回到未来的哪个版本
  • git checkout --filename.xxx把某文件在工作区的修改 全部撤销,让这个文件回到最近一次的git commitgit add时的状态
  • git rm用于删除一个文件
  • git remote add orign git@github.com:yourname/myGit.git关联一个远程库
  • git push (-u) origin maste把本地库的所有内推送到远程库上,-u是第一次推送master分支的所有内容,以后再推送时不用加上-u
  • git clone xxx克隆一个仓库
  • git branch查看分支
  • git branch <name>创建分支
  • git checkout <name>切换分支
  • git checkout -b <name>创建并切换分支
  • git merge <name>合并某分支到当前分支
  • git branch -d <name>删除分支,-D强行删除
  • git log --graph可以看到分支合并图
  • git merge --no-ff -m "xxx" branchname可以用普通模式合并,合并后的历史有分支,能看到曾经做过的合并,而fast forward合并看不出曾经做过的合并
  • git stash常用于发现bug时把当前工作现场“储藏”起来
  • git stash pop用于回到工作现场
  • git remote -v查看远程库信息
  • git push origin <branch-name>推送自己的修改
  • git pull抓取远程的新提交,即从远程抓取分支
  • git checkout -b branch-name origin/branch-name在本地创建和远程分支对应的分支
  • git branch --set-upstream branch-name origin/branch-name建立本地分支与远程分支的关联

遇到的问题

解决端口占用问题之后,与使用cnpm install的结果一样
在这里插入图片描述一直没反应
,,,,,,,,,
其实这是正常的,说明app已经跑起来了,但我的Chrome迟迟不出现index.html,好奇怪啊
在这里插入图片描述
经历了一顿操作,浏览器终于跳出来test页面了,一直不出来是因为杀死占用9000端口号的进程后关闭了cmd命令,于是kill失效了在这里插入图片描述

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值