Git的基本使用与Gitee仓库的搭建

Git学习

版本控制

简单来说就是用于管理多人协同开发项目的技术
多人开发必须要使用版本控制,提高效率

常见版本控制工具

Git

SVN(Subversion)

VSS

TFS

Visual Studio Online

版本控制分类

  1. 本地版本控制
    记录文件每次的更新,对每个版本做一个快照,如RCS

  2. 集中式版本控制
    所有版本数据保存在集中服务器上,如SVN
    为了保证安全,服务器需要定期备份
    服务器与开发者多对一,多个人提交代码冲突时候需要解决冲突

  3. 分布式版本控制
    每个人都有全部的代码,会有安全隐患
    每个人的电脑都是一个完整版本库。可在本地离线提交本地版本,联网后进行push
    Git是目前世界上最先进的分布式版本控制系统

Git历史

Linux内核开发项目组在02年~05年启用BitKeeper进行管理和维护代码,由于开发者尝试对BitKeeper进行破解,05年结束赞助。
Linus用两周时间开发了Git系统,是免费开源的,为了辅助Linux内核开发

Git安装

  • 安装
  1. Git官网:https://git-scm.com/
  2. 阿里镜像:https://npm.taobao.org/mirrors/git-for-windows/
  • 卸载
    一键卸载+清除环境变量

win下安装git

  1. Git Bash ->接近Linux操作,推荐

  2. Git CMD ->Windows风格

  3. Git GUI ->图形化客户端,不建议

Git必要配置

所有配置文件其实都保存在本地
首先配置账号
git config --global user.email "用户名"
git config --global user.email 邮箱地址

Git理论核心(重要)

  • 本地工作区:

    工作目录(Working Directory)

    暂存区(Stage/Index)

    资源库(Repository/Git Directory)

  • 远程工作区:

    git仓库(Remote Directory)

上传:git add . -> git commit -> git push

下载:git pull -> git reset -> git checkout

工作区:平时存放代码的地方,下面有.git隐藏文件

暂存区:一个文件,用于存放改动

仓库区:安全存放数据的位置,有提交到所有版本的数据,HEAD指向最新放入仓库的版本

远程仓库:托管代码的服务器

PS:能直接接触到的只有工作区和远程仓库

Git项目的搭建

两种方法;

  1. 本地创建全新仓库

    git init

  2. 克隆远程仓库

    git clone [url]

    clone项目注意查看版权信息,有些项目用于商用则要收费

这里需要注意,mac系统下每个文件夹中默认有一个名为".DS_Store“的文件,目的在于存储目录下文件的图标颜色和排版等信息,类似Windows 下的 desktop.ini。为了避免多人开发造成冲突

  • 在硬盘根目录上执行,以删除mac上所有.DS_Stroe

    find ~ -name ".DS_Store" -delete

  • 禁止生成

    defaults write com.apple.desktopservices DSDontWriteNetworkStores -bool TRUE

  • 恢复生成

    defaults delete com.apple.desktopservices DSDontWriteNetworkStores

忽略文件配置

*****补充,第九集

使用码云

github有墙,在国内多使用gitee,在公司有时候会搭建自己的gitlab服务,这是三种主流方式

  1. 完善个人信息,可以作为个人找工作的门面

  2. 设置本机绑定SSH公钥,实现免密登录(该部分单独介绍)

  3. 新建一个码云仓库,若公开需要选择开源许可证

  4. 把仓库clone到本地文件夹,即绑定成功

SSH公钥配置方法

  1. cd到.ssh目录

    .ssh目录位置:

    • Win:C:\Users\Administrator.ssh

    • Mac:~/.ssh

    • Linux:~/.ssh //没有的话自己mkdir

  2. ssh-keygen -t rsa生成公钥

    -t 后跟参数表示加密算法,执行后在文件夹下会生成两个文件

    • id_rsa.pub是公钥

    • id_rsa是私钥

    将pub文件中的内容添加到页面的公钥框内,该内容会包括git的用户名邮箱设置

使用Jetbrains家IDE进行集成

之前已将仓库和本地目录进行了绑定

有两种方法集成IDE

  1. 新建工程,工程目录需要和git目录重合
  2. 新建工程后,将本地目录的所有文件(包括.git)一同拷贝进新工程目录

注意此时IDE的变化:

  • 工程内会自动生成".gitignore"文件

  • 文件会出现颜色,文件会变成红色(修改),绿色(已提交)

  • 左下角出现Version Control,可追溯版本变化

  • 右上角出现Git快捷键,可以傻瓜式add和commit

  • 右键已修改的文件,git选栏下有傻瓜操作,add和commit

add,commit和push也都可以在IDE自带terminal下操作,使用右上角快捷傻瓜操作,commit的时候把弹出窗右侧的选中全取消,可以快速提交。

分支

命名:master->主分支,dev->开发分支

多个分支若并行,即同时存在多个版本,就不会有代码冲突

  • 列出所有分支

git branch

  • 列出所有远程仓库分支

git branch -r

  • 新建分支,但停留在当前分支

git branch []

  • 新建分支并跳转

git checkout -b []

或m先branch再checkout

  • 删除分支

git branch -d []

  • 删除远程分支

git branch -dr []

  • 合并到当前分支(两种区别需要另述)

git merge branch []

git rebase branch []

在定制过iTerm2之后,可以直接在本地仓库目录下显示分支,十分方便。

到此基本使用已经足够,关于仓库的分支跳转等,之后会另写一篇进行补充。

posted @ 2020-05-14 09:18  Tzbubble  阅读(616)  评论(0编辑  收藏  举报