Git基础入门

什么是git

  • Git 是一个开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目。
  • Git 是 Linus Torvalds 为了帮助管理 Linux 内核开发而开发的一个开放源码的版本控制软件。
  • Git 与常用的版本控制工具 CVS, Subversion 等不同,它采用了分布式版本库的方式,不必服务器端软件支持。

git与svn的区别

  • Git 是分布式的,SVN 不是:这是 Git 和其它非分布式的版本控制系统,例如 SVN,CVS 等,最核心的区别。
  • Git 把内容按元数据方式存储,而 SVN 是按文件:所有的资源控制系统都是把文件的元信息隐藏在一个类似 .svn、.cvs 等的文件夹里。
  • Git 分支和 SVN 的分支不同:分支在 SVN 中一点都不特别,其实它就是版本库中的另外一个目录。
    -Git 没有一个全局的版本号,而 SVN 有:目前为止这是跟 SVN 相比 Git 缺少的最大的一个特征。
  • Git 的内容完整性要优于 SVN:Git 的内容存储使用的是 SHA-1 哈希算法。这能确保代码内容的完整性,确保在遇到磁盘故障和网络问题时降低对版本库的破坏。

下载git

安装

  • 我下载的是Git-2.30.1-64-bit.exe,点击运行,傻瓜式安装,下一步即可。
  • 安装完成后会生成git目录如下
    在这里插入图片描述
    解释:git bash :类似Linux窗口,操作命令行。(是用的最多)

基本命令的使用

  • cd : 改变目录
  • cd … :回退到上级目录
  • pwd:显示当前所在的目录路径
  • ls(ll):都是列出目录中的所有文件,ll列出的更详细。
  • touch:在当前目录下新建一个文件。
  • rm:删除一个文件。
  • mkdir:新建一个目录,就是新建一个文件夹。
  • rm -r:删除一个文件夹(rm -r src 就是删除src目录)。
  • mv:移动文件,
  • reset:重新初始化终端/清屏。
  • clear:清屏。
  • history:查看命令历史。
  • help:帮助。
  • exit:退出。
  • #:表示注释。

git配置

  • git config -l #表示查看当前git的所有配置
  • git config --system --list #表示查看当前系统给我们配置的信息
  • git config --global --list #表示用户自己的配置信息
  • 通过git config --global user.name '“username” #设置用户名
  • 通过git config --global user.email '“email” #设置邮箱
    用户自己设置的信息可以在C盘用户自己的目录下通过.gitconfig文件查看。

git基本理论

  • Git本地有三个工作区域:工作目录(Working Directory),暂存区(Stage/Index),资源库(Repository或Git Directory),如果在加上远程的git仓库(Remote Directory)就可以分为四个工作区域。
  • 本地工作目录(通过git add)到暂存区通过(git commit)到本地仓库(git push)远程仓库。
  • 反向操作(远程仓库)git pull -->git reset -->git checkout
  • workspace:工作区
  • index/Strage:暂存区(实际上就是一个文件)
  • repository:仓库区
  • remote:远程仓库,托管代码的服务器。

Git项目搭建

  • 创建本地仓库的方式有两种:y一种是建立全新的仓库,另一种是克隆远程仓库。
  • 在本地建立一个新的仓库;新建文件夹,右键 git bash,输入命令:git init 。然后出现一个.git文件。
  • 克隆远程仓库:git clone [url] 。

Git文件操作

  • 文件的四种状态:
  • Untracked:未跟踪,此文件在文件夹中,但并没有加入到git仓库,不参与版本控制,通过哟git add状态改为Staged。
  • Unmodify:文件已经入库,未修改,即版本库中的文件与本地仓库中的文件一样,这种文件有两种去处,如果他被修改,而变为modified,如果使用git rm移除版本库,则成为Untracked文件。
  • Modified:文件已经修改,仅仅是修改,但并没有进行其他的操作,这个文件也有两种去处,通过git add可以进入暂存区,staged,使用git checkout则丢弃,返回Unmodify状态,这个git checkout即从库中取出文件,覆盖当前修改。
  • Staged:暂存状态,执行git commit则同步到仓库中,文件变为Unmodify状态,执行git reset HEAD filename 取消暂存,文件为Modify。
  • 查看文件状态:
  • git status [filename] #查看指定文件的状态
  • git status #查看所有的文件状态
  • git add . #添加所有文件到暂存区
  • git commit -m"消息内容" #提交暂存区中的内容到本地仓库
  • 忽略文件:
  • 忽略文件中的空行或以#开始的行将会被忽略
  • 可以使用Linux通配符,例如(*)代表任意多个字符,(?)代表一个字符,([abc])代表可选字符范围
  • 如果名称的最前面有一个感叹号(!),代表例外规则,将不被忽略
  • 如果名称的最前面是一个路径分隔符(/),表示要忽略的文件在此目录下,而子目录中的文件不忽略
  • 如果名称的最后面是一个路径分隔符(/),表示要忽略的是此目录下该名称的子目录,而非文件(默认文件和目录都忽略)。

使用码云

  • 在国内我们一般使用gitee,公司会搭建自己的gitlab服务器。
  • 注册码云,登录,完善信息。

配置SSH公钥以及创建远程仓库。

  • 在C盘用户目录的.ssh文件夹下执行 ssh-keygen -t rsa 生成公钥。
  • 然后将公钥注册到码云即可。
  • 然后码云上的仓库就和本地的仓库绑定。
  • 使用码云创建一个自己的仓库。
  • 许可证:开源是否可以转载,开源但是不能商用。
  • 创建完成仓库后,在本地使用 git clone [url] 即可将远程仓库clone到本地。
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值