• git教程和命令集合


    详细教程可参考

    git community book中文版

    git教程(廖雪峰)

    1. 安装

      • 官网下载git安装包,进行安装即可;

      • 打开cmd终端,输入 “git --version”,回车,出现git版本信息说明安装成功。

    2. 配置

      进入开始菜单,打开git bash;

      输入如下命令:

      git config --global user.name "Your Name"
      git config --global user.email "email@example.com"
    3. 创建本地仓库

      在git bash终端中执行如下命令:

      • mkdir <文件夹名称>

      • cd <文件夹名称>

      • git init

    4. 提交修改(本地仓库)

      在库中添加txt.md文件,并输入内容。然后执行如下命令:

      • git add <文件名> // 添加进暂存区

      • git commit -m "创建了一个文件" // 提交到仓库

      可以为某个提交打标签,在commit后执行:

      • git tag <tag名> //新建标签

      • git tag -d <tag名> //删除标签

      • git push origin <tag名> //推送一个标签到远程

      • git push origin --tags //推送所有标签到远程

      • git push origin :refs/tags/<tag名> //远程仓库删除一个标签

    5. 查看状态

      • git status // 查看所有状态,是否有修改要add或commit

      • git diff 或 git diff <文件名> //查看代码的具体修改差异

    6. 查看日志

      • git log //展示提交日志信息比较多,仅包括当前版本及之前版本的提交log,如果未来版本回退,则回退后执行该命令将仅限显示该版本及更早版本的日志信息。

      • git log --oneline //每次提交日志仅展示在一行内

      • git reflog //展示包括提交日志和回退日志在内的所有日志

    7. 版本回退

      • git reset --hard head ~n //回退到之前n个版本

      • git reset --hard <版本id的前几个字母> //回退到历史版本或未来版本

    8. 撤销本地修改

      • 当修改内容未 git add 添加进缓存区时:

      git checkout -- . 或 git checkout -- <文件名> //修改将从文件中删除

      • 当修改内容已经提交到暂存区时:

      git reset head 或 git reset head <文件名> // 修改将回退到git add之前,但相应的修改还在文件中

      • 所有情况(无论是否加入暂存区),都可如下执行:

      git reset --hard head // 文件将从文件中删除所有修改,但只能修改所有文件的修改,无法单独撤销某个指定文件

    9. 远程仓库

      • 查看是否有密钥:

        在本地用户目录(形如“C:Usershikadmin”),查找是否有.ssh文件夹,如果没有则创建密钥。

      • 创建密钥(输入以下命令,一路回车即可,将产生id_rsa和id_rsa.pub两个文件):

        ssh-keygen -t rsa -C "你的邮箱地址"
      • 将密钥配置到自己的github账户:

        登录github账户-》settings-》 SSH and GPG keys -》new SSH key-》设置title,拷贝id_rsa.pub至key-》Add SSH key

      • 创建自己的github开源项目

        (1)方式一

        • 创建远程仓库 rep

        • 创建同名本地仓库 rep,并进行本地仓库编码

        • 本地仓库与远程仓库关联

          git remote add origin https://github.com/<github账户名>/rep.git

          git remote add origin git@github.com:<github账户名>/rep.git
        • 删除本地仓库与远程仓库的关联

          git remote rm origin
        • 上传文件到远程仓库

          前提:已经执行完 git add/ git commit命令

          首次上传使用如下命令:

          git push -u origin master

          非首次上传使用简化命令即可:

          git push

        (2)方式二

        • github 创建远程仓库

        • 本地执行:

          git clone <git远程仓库地址>
        • 上传文件到远程仓库

          cd <clone的本地仓库名>
          git add .
          git commit -m '日志'
          git push
      • 查看远程库信息

      git remote      //查看简化信息
      git remote -v   //查看详细信息

       

    10. 处理分支

      • 查看分支列表

        git branch
      • 创建分支

        git checkout/branch -b <分支名>  //创建并转到新建的分支

        git branch <分支名> //创建分支
      • 转到分支

        git checkout <分支名>
      • 合并分支到另一个分支

        如将子分支合并到master分支上:

        git checkout master  //首先,转到master分支
        git merge <子分支名> //然后,将子分支合并到当前分支(即master分支),删除子分支后无合并历史记录

        git checkout master
        git merge --no-ff -m '日志' <子分支名> //no-ff模式,将创建一个commit记录,删除子分支,合并记                       录可通过git log查看
      • 删除子分支

        git branch -d <分支名>  //不存在未合并的修改时
        git branch -D <分支名> //存在未合并的修改时,通过-D强制删除分支
      • 本地分支推送到远程

        git push origin <分支名>
      • 从远程拉取一个分支到本地

        git checkout -b <本地分支名> origin/<远程分支名>   //建议本地和远程分支名一致
      • 本地拉取远程分支的更新

        (1)一般情况

        git pull

        如果报如下错误:

        There is no tracking information for the current branch. Please specify which branch you want to merge with. See git-pull(1) for details.

        则需要先执行:git branch --set-upstream-to=origin/<远程分支名> <本地分支名>

        然后在执行:git pull

        或 直接执行如下命令:

        git pull orgin <远程分支名>

        (2)当需要将本地分支提交到远程分支,但远程分支上有其他成员的最新提交没有同步到本地,可以使用如下命令将提交转换成一条线:

        git rebase origin

        git rebase origin/<分支名>

        若 rebase过程发生冲突,需要手动修复冲突,然后执行:

        git add .
        git rebase --continue

        可以随时撤销rebase,用如下命令:

        git rebase --abort

        有关abort解释参考如下链接: http://gitbook.liuhui998.com/4_2.html

    11. 分支冲突解决

      子分支提交修改,主分支也提交修改,当合并子分支到主分支git merge时,发生冲突,解决方式:

      在主分支冲突文件中,手动修改冲突内容,然后 git add/git commit,并删除子分支。

    12. 分支使用策略

       

  • 相关阅读:
    android中uiautomatorviewer monkeyrunner脚本地址
    python subprocess 获取执行结果
    blazor学习
    【.NET框架实战】IdentityServer4身份验证、授权
    命令行 查看当前.net和.net core版本
    github种的asp.net core源代码
    ASP.NET Core Web主机(IWebHostBuilder)
    EntityFrameworkCore教程:生成数据库表
    2021年规划
    [从0到1搭建ABP微服务]
  • 原文地址:https://www.cnblogs.com/zhcBlog/p/12308447.html
Copyright © 2020-2023  润新知