Git初使用

Git初步学习

一些基础指令

基本的Linux命令学习

  • cd: 改变目录
  • cd…: 回退到上个目录
  • pwd: 显示当前所在的目录的目录路径
  • ls: 列出当前目录中的所有的文件
  • touch: 新建一个文件,如touch index.js 就会在当前目录下新建一个index.js文件。
  • rm: 删除一个文件, rm index.js 就会把index.js文件删除
  • mkdir: 新建一个目录,就是新建一个文件夹
  • rm -r: 删除一个文件夹
  • rm -rf 切勿在Linux中尝试!删除电脑中的全部文件
  • mv: 移动文件, mv index.js test index.js是要移动的文件,test是目标文件夹。
  • reset: 重新初始化终端/清屏
  • clear: 清屏
  • history: 查看命令历史
  • help: 帮助
  • exit: 退出
  • #: 表示注释,但不建议在其中写注释.

Git基本理论

工作区域

​ Git本地有三个工作区域:工作目录,暂存区,资源库。如果再加上远程的git仓库就可以分为四个工作区域。

  • Workspace: 工作区,就是存放项目代码的地方
  • Index / Stage: 暂存区,用于临时存放改动。
  • Repository:仓库区(或本地仓库),就是安全存放数据的位置,里面有你提交的所有版本的数据。其中HEAD指向最新放入仓库的版本
  • Remote:远程仓库,托管代码的服务器,可以简单的认为是你项目组中的一台电脑用于远程数据交换

本地的三个区域确切的说是git仓库中HEAD指向的版本

工作流程

git的工作流程一般是这样的 :

  1. 在工作目录中添加、修改文件

  2. 将需要进行版本管理的文件放入暂存区域

    git add
    
  3. 将暂存区域的文件提交到git仓库

    git commit
    
  4. 推送到远程仓库

    git push
    

因此,git管理的文件有三种状态:已修改(modified),已暂存(staged),已提交(committed)

Git项目搭建

创建工作目录以及常用指令

​ 工作目录(workspace)一般的就是希望Git帮助你管理的文件夹,可以是项目的目录,也可以是一个空目录,最好不要有中文。

​ 一般只需记住以下命令

  • 从工作区(workspace)add 到暂存区(Index)
  • 从暂存区 commit 到本地仓库(Repository)
  • 从本地仓库 **push ** 到远程仓库(Remote)
  • 从远程仓库 clone 到本地,然后 checkout 到工作区
  • 从远程仓库直接 pull 到工作区

本地仓库的创建

​ 创建本地仓库有两种选择:

一是创建全新的仓库

​ 创建全新的仓库,需要到希望管理的项目的根目录下右键打开git bash执行以下命令

git init

执行后可看到多出了一个.git目录,为隐藏文件夹,里面存放着版本等所有信息。

二是克隆远程仓库

git clone [url]

可以到gitee或者GitHub上去尝试!

查看文件状态

文件有四种状态:

  1. Untracked(未跟踪,文件在文件夹中,但是并没有加入到git库中,不参与版本控制)
  2. Unmodify(文件已经入库,未修改)
  3. Modified(文件已修改,仅仅是修改,没有进行其他的操作)
  4. Staged(暂存状态)
#查看指定文件状态
git status [filename]

#查看所有文件状态
git status

# git add.     添加所有文件到暂存区
# git comit -m "消息内容" 提交暂存区中的内容到本地仓库  -m 提交信息

忽略文件

有些时候一些文件不需要提交上去,这时就需要忽略这些文件。

在主目录下建立.gitignore文件,文件有以下规则:

  1. 忽略文件中的空行或以(#)开始的行将会被忽略
  2. 可以使用Linux通配符。例如:星号(*)代表任意多个字符,问号(?)代表一个字符,方括号([abc])代表可选字符范围,大括号({string1,string2})代表可选的字符串等。
  3. 若名称前有一个感叹号(!),则表示例外规则,将不会被忽略
  4. 若名称最前面有一个(/),则表示,要忽略的文件在此目录下,而子目录中的文件不忽略
  5. 若名称的最后面有一个(/),则表示,要忽略的是此目录下该名称的子目录,而非文件
*.txt       #忽略所有以.txt结尾的文件
!lib.txt    #以txt结尾,但有!所以不被忽略
/temp       #仅忽略项目根目录下的TODO文件,不包括其他目录temp
build/      #忽略build/目录下的所有文件
doc/*.txt   #忽略 doc/notes.txt 但不包括 doc/server/arch.txt

OK!本文到这里就结束了。如果本文内容对你有所帮助的话,请不要吝啬,动动手指点一下赞哦~

ps:第一次用markdown排版,尽力了…

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值