zoukankan      html  css  js  c++  java
  • 工作中常用的git命令(工作笔记)

    常用命令

    • 配置

      • 查看所有配置
        git config --list
        
      • 配置用户名
        git config --global user.name "用户名"
        
      • 配置邮箱
        git config --global user.email="邮箱地址"
        
    • 代码管理

      • 克隆代码
        git clone 远程git仓库链接
        
        例子:
        git clone http://192.168.0.1/dbwos/gitDemo
        描述:
        拉取了192.168.0.1上的一个代码仓库到本地。
        
      • 查看文件状态
        git status
        
      • 添加修改的文件到暂存区
        git add -a
        
        备注:
        上面的语句把所有修改添加到临时仓库。
        
        git add 文件名
        
        备注:
        添加指定文件到暂存区。
        
        git add .
        
        备注:
        添加当前工作区下的所有文件到暂存区。
        
      • 提交暂存区代码到本地仓库
        git commit -m '备注'
        
        备注:
        提交上面add的修改,-m后面是此次提交的备注。
        这时候没有提交到远程仓库
        
      • 提交本地仓库的代码到远程仓库
        git push origin 分支名
        
        例子:
        git push origin bob
        解释:
        上面的代码将commit的修改提交到bob分支
        
      • 查看提交日志
        git log
        
        显示
        commit 7901fa27eb6090a7335ea13ec32
        Author: bob <eastry@qq.com>
        Date:   Thu May 14 10:29:42 2020 +0800
        
           测试2
        
        commit 5f9e190059477665438869fdb54
        Author: bob <eastry@qq.com>
        Date:   Wed May 13 17:12:36 2020 +0800
        
           测试1
        
        
        添加--pretty=oneline让显示结果更简洁
        git log --pretty=oneline
        
        显示
        a663e7858e52f0b93eff58a4c8c (HEAD -> master, origin/master) some change
        7901fa27eb6090a7335ea13ec32 测试2
        5f9e190059477665438869fdb54 测试1
        
        

        这里的一串类似7901fa27eb6090a7335ea13ec32的东西是commit的id,就像身份证号一样可以定位到是哪个commit。

    • 版本控制

      • 回到上一版本

        git reset --hard HEAD^
        

        --mixed
        意思是:不删除工作空间改动代码,撤销commit,并且撤销git add . 操作
        这个为默认参数,git reset --mixed HEAD^ 和 git reset HEAD^ 效果是一样的。
        --soft
        不删除工作空间改动代码,撤销commit,不撤销git add .
        --hard
        删除工作空间改动代码,撤销commit,撤销git add .这个命令会将代码彻底恢复到上一次commit时候的样子,很干净很彻底。

      • 回到指定版本

        git reset --hard commitId
        如:
        git reset --hard 7901fa27eb6090a7335ea13ec32
        
      • 查看每一次命令

        git reflog
        
    • 撤销

      • 撤销工作区的修改
        你下载了代码,然后做了些修改。但是一运行发现全是bug,赶紧撤自己的修改。

        git checkout -- readme.txt
        //这句命令就是把工作区的修改全部撤销
        

        命令git checkout -- readme.txt意思就是,把readme.txt文件在工作区的修改全部撤销,这里有两种情况:
        1.readme.txt还没有被提交到暂存区,也就是还没有运行git add readme.txt命令,会将readme.txt恢复到和版本库中一样的文件。
        2.readme.txt已经被提交到了暂存区,也就是已经运行了git add readme.txt命令,但是这时候你又修改了readme.txt文件。这时候会恢复到add时候的样子。

      • 撤销add后的代码

        git restore --staged <file>...
        
        例子:
        git add src/com/test.txt src/com/tes1.txt
        git restore --staged .
        解释:
        将刚刚add的所有文件撤销回来
        

        或者

        git reset HEAD //撤销上次add的所有文件
        git reset HEAD readme.txt//撤销上次add的readme.txt文件
        
      • 撤销commit后的代码

        git reset 
        
    • 分支管理

      • 查看所以分支

        git branch -a
        
      • 切换分支

        git checkout 分支名
        
        例子:
        git checkout bob
        //上面的例子切换到bob分支
        
      • 更新remote索引
        有时候别人添加了一个分支,使用git branch -a查看不到,所以这时候使用fetch命令来更新一下远程的索引。

        git fetch
        

    git笔记

    作者:BobC

    文章原创。如你发现错误,欢迎指正,在这里先谢过了。博主的所有的文章、笔记都会在优化并整理后发布在个人公众号上,如果我的笔记对你有一定的用处的话,欢迎关注一下,我会提供更多优质的笔记的。
  • 相关阅读:
    mongo备份&恢复
    logstash参数配置
    elasticsearch索引自动清理
    Linux将公网ip映射到局域网ip
    普通用户创建ssh无密码访问
    软考介绍
    安装ffmpeg
    Hadoop实战-Flume之自定义Sink(十九)
    Hadoop实战-Flume之自定义Source(十八)
    Hadoop实战-Flume之Sink Load-balancing(十七)
  • 原文地址:https://www.cnblogs.com/Eastry/p/12839691.html
Copyright © 2011-2022 走看看