• 常用git命令


    建议先看这本书Pro Git,有中文的网页版https://gitee.com/progit/(如果马上要用的直接看干货)

    直接干货:

    git常用命令

    • git config --global user.name "name"

    • git config --global user.email "xxx@yy.com"

    • git init

    • 查看:git config -l git config --list

    • 重置多个user.name:git config --global --replace-all user.name "name"

    • 重置多个user.email:git config --global --replace-all user.emai "xxx@yy.com"

    默认--global的配置文件存在用户目录下的.gitconfig目录下:

    默认所有的name和email的信息为.gitconfig中的

    • 当前项目的 git 目录中的配置文件(也就是工作目录中的 .git/config 文件):这里的配置仅仅针对当前项目有效。每一个级别的配置都会覆盖上层的相同配置,所以 .git/config 里的配置会覆盖 /etc/gitconfig 中的同名变量。

    • 如果用了 --global 选项,那么更改的配置文件就是位于你用户主目录下的那个,以后你所有的项目都会默认使用这里配置的用户信息。如果要在某个特定的项目中使用其他名字或者电邮,只要去掉 --global 选项重新配置即可,新的设定保存在当前项目的 .git/config 文件里。

    • 查看当前分支:git branch

    • 查看所有分支:git branch -a

    • 切换到分支qqq: git checkout qqq

    • 拉取远程分支xxx:git pull origin xxx

    • 在远端分支remote1.1的基础上创建本地分支xxx写代码git checkout -b xxx origin remote1.1

    • 在xxx分支上写代码创建自己的新分支并切换到新分支xxx-y:git checkout -b xxx-y

    • 删除分支xxx-y:如果当前分支在xxx-y,先切换到其他分支,然后再git checkout -d xxx-y

    • 清除本地分支所有修改:git checkout -f

    • 重命名本地分支sss为yyy:git branch -m sss yyy

    • 本地分支sss推到远程:git push origin sss

    • 本地分支sss推到远程并且关联:git push -u origin sss

    • 删除远程分支sss:

      1. git push --delete origin sss

      2. git branh -d -r sss

    • 撤销本地分支xxx 推到远程yyy分支的记录:

      1. git checkout xxx 切换到xxx

      2. git log 查看commit的记录,找到需要回到的版本号12312312313

      3. git reset --soft 12312312313 soft的意思是回到12312312313这个版本号保留本地修改,hard是回到12312312313这个版本号清除所有修改

      4. git push yyy --force 强制推送版本号12312312313到远程,远程就只有版本号12312312313,想撤销的已经被覆盖掉

      5. 继续编辑代码 -> git add .

                 -> git commit -m "this is a commit!"

                 -> git push origin yyy

    • 合并分支yyy到xxx:

      1. 切换到xxx:git checkout xxx

      2. 合并yyy:git merge yyy

    • git add .

    • git add -u

    • git add -all = git add -A

    • git restore --staged .

    • git merge --abort

     

    • idea中git log的查看

    1. 绿色标签代表本地分支有的

    2. 紫色标签代表远程分支有的

    3. 黄色标签代表当前分支

     

    • git commit -m "" message的使用:

    • 查看版本差异:

      1. git diff:查看未暂存和上次commit之间差异,如果git add .后,就看不到了

      2. git diff --staged(--cached):查看已暂存和上次commit之间的差异

    • 重命名文件:git mv file_from file to

    • 移除文件:要从 Git 中移除某个文件,就必须要从已跟踪文件清单中移除(确切地说,是从暂存区域移除),然后提交。

      1. 如果手动删除文件,git status会提示Changes not staged for commit

      2. 然后可用git rm 记录该次删除操作,git status 时就会提示Changes to be commited,

    • 查看提交记录git log 的使用:

      1. git log -p -2

        • -p 展示每个更新之间的差异
        • -2 展示最近2个
      2. git log --pretty=format:"%h %s" --graph

        • --graph 左侧展示ASCII字符串表示的图形
        • format 的参数:
        • %H 提交对象(commit)的完整哈希字串
            %h 提交对象的简短哈希字串
            %T 树对象(tree)的完整哈希字串
            %t 树对象的简短哈希字串
            %P 父对象(parent)的完整哈希字串
            %p 父对象的简短哈希字串
            %an 作者(author)的名字
            %ae 作者的电子邮件地址
            %ad 作者修订日期(可以用 -date= 选项定制格式)
            %ar 作者修订日期,按多久以前的方式显示
            %cn 提交者(committer)的名字
            %ce 提交者的电子邮件地址
            %cd 提交日期
            %cr 提交日期,按多久以前的方式显示
            %s 提交说明
        •  未完待续

  • 相关阅读:
    过渡效果
    生命周期
    事件处理
    列表的搜索和排序
    DotNetBar for Windows Forms 12.1.0.0_冰河之刃重打包版 原创发布
    DotNetBar for Windows Forms 11.8.0.8冰河之刃重打包版
    闲读
    POJ 3253 Fence Repair 贪心 优先级队列
    POJ 2431 Expedition 贪心 优先级队列
    优先级队列-堆-STL实现
  • 原文地址:https://www.cnblogs.com/motorye/p/14190031.html
Copyright © 2020-2023  润新知