版本控制(git、svn)

Git

什么是Git?

  • Git是一款源代码管理工具(版本控制工具)
*   人工的去处理不同的版本,做相应备份会很麻烦。

Git安装

初始化Git仓储/(仓库)

  • 这个仓库会存放,git对我们项目代码进行备份的文件

  • 在项目目录右键打开 git bash

  • 命令: git init

自报家门

  • 就是在git中设置当前使用的用户是谁

  • 每一次备份都会把当前备份者的信息存储起来

  • 命令:

    • 配置用户名:git config --global user.name "xiaoming"

    • 配置邮箱: git config --global user.email "xm@sina.com"

把大象放到冰箱要几步

  1. 打开冰箱门

  2. 放大象

  3. 关上冰箱

把代码存储到.git仓储中

  • 1.把代码放到仓储的门口

    • git add ./readme.md 所指定的文件放到大门口

    • git add ./ 把所有的修改的文件添加到大门口

  • 2.把仓储门口的代码放到里面的房间中去

    • git commit -m "这是对这次添加的东西的说明"
      git rm raindow -r -f删除raindow文件夹及里面的所有东西

可以一次性把我们修改的代码放到房间里(版本库)

  • git commit --all -m "一些说明"

    • --all 表示是把所有修改的文件提交到版本库

查看当前的状态

  • 可以用来查看当前代码有没有被放到仓储中去

  • 命令: git status
    发现test.rtf被修改
    git diff test.rtf 查看具体修改了什么

git中的忽略文件

  • .gitignore,在这个文件中可以设置要被忽略的文件或者目录。

  • 被忽略的文件不会被提交仓储里去.

  • 在.gitignore中可以书写要被忽略的文件的路径,以/开头, 一行写一个路径,这些路径所对应的文件都会被忽略, 不会被提交到仓储中

    • 写法

      • /.idea 会忽略.idea文件

      • /js 会忽略js目录里的所有文件

      • /js/*.js 会忽略js目录下所有js文件

查看日志

  • git log 查看历史提交的日志

  • git log --oneline 可以看到简洁版的日志

回退到指定的版本

  • git reset --hard Head~0

    • 表示回退到上一次代码提交时的状态
  • git reset --hard Head~1

    • 表示回退到上上次代码提交时的状态
  • git reset --hard [版本号]

    • 可以通过版本号精确的回退到某一次提交时的状态
  • git reflog

    • 可以看到每一次切换版本的记录:可以看到所有提交的版本号

分支

  • 默认是有一个主分支master

创建分支

  • git branch dev

    • 创建了一个dev分支

    • 在刚创建时dev分支里的东西和master分支里的东西是一样的

切换分支

  • git checkout dev

    • 切换到指定的分支,这里的切换到名为dev的分支git branch 可以查看当前有哪些分支

合并分支

  • git merge dev

    • 合并分支内容,把当前分支与指定的分支(dev),进行合并

    • 当前分支指的是git branch命令输出的前面有*号的分支

  • 合并时如果有冲突,需要手动去处理,处理后还需要再提交一次.

GitHub

  • https://github.com

  • 不是git,只是一个网站

  • 只不过这个网站提供了允许别通过git上传代码的功能

提交代码到github(当作git服务器来用)

  • git push [地址] master

  • 示例: git push https://github.com/huoqishi/test112.git master master

  • 会把当前分支的内容上传到远程的master分支上

  • git pull [地址] master

  • 示例: git pull https://github.com/huoqishi/test112.git master

git remote add origin git@github.com:lanweipeng/hh.git
git push -u origin master

  • 会把远程分支的数据得到:(注意本地-要初始一个仓储!)

  • git clone [地址]

  • 会得到远程仓储相同的数据,如果多次执行会覆盖本地内容。
    想要在github(码云等远程仓库)服务器上 push,得先在github上设置本机的ssh公钥,如果设置完毕,
    打开命令窗口(window用git bash,mac用终端)
    打开命令窗口,进入.ssh目录:
    cd ~/.ssh

    查看公钥: cat id_rsa.pub
    vscode图形化工具,vscode自带图形化工具


    image.png

    1.在输入框填上原来 git commit -m "xxx"引号里面的内容,再打上勾,这步相当于git add . + git commit -m "xxx"
    2.push
    相当于git push -u origin master


    image.png
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 1. 安装 Github 查看是否安装git: $ git config --global user.name "...
    Albert_Sun阅读 13,860评论 9 163
  • 声明:这篇文章来源于廖雪峰老师的官方网站,我仅仅是作为学习之用 Git简介 Git是什么? Git是目前世界上最先...
    横渡阅读 4,141评论 3 27
  • GIT分布式版本控制系统最佳实践 这篇文章来自于老男孩教育高级架构师班12期的徐亮偉同学。 首先感谢老男孩架构师班...
    meng_philip123阅读 3,816评论 4 36
  • 安装Git Git的下载地址:Git官网下载地址 Git本地仓库和命令 配置用户 下载完Git后,右键会有一个Gi...
    TokyoZ阅读 4,639评论 1 7
  • git 使用笔记 git原理: 文件(blob)对象,树(tree)对象,提交(commit)对象 tree对象 ...
    神刀阅读 3,856评论 0 10

友情链接更多精彩内容