美文网首页
Git命令整理(子模块、基本的cmd命令)

Git命令整理(子模块、基本的cmd命令)

作者: 伽蓝烟雨 | 来源:发表于2017-09-27 18:25 被阅读95次

    一、基本cmd命令(可结合Git使用)

    退出当前目录返回上一级目录: cd ..
    跳到下一级目录:cd 文件夹名称
    查看当前目录 :dir
    创建文件夹:mkdir 文件夹名称
    创建文件 :echo >文件名称
    打开文件: .\文件名称

    二、本地版本库

    1.Git命令初级命令

    Pwd 显示当前目录
    Git init 将当前目录设为仓库
    Git add 文件名
    Git commit -m"注解" 提交文件到仓库(m里面包含注解)

    2.Git相关概念

    工作区:working dirtectory
    版本库 :repository (即:.git目录)
    stage (index) 暂存区
    git add 事实上是将文件添加到暂存区
    git commit 是将暂存区内容提交到当前分支
    git push 将当前分支推送到远程服务器
    重要:修改不添加(git add)到暂存区的话,提交(git commit)是无效的,所以 每次提交前都得git add。

    3.Git 撤销修改

    git log 查看提交历史
    git reset --hard HEAD~n 回退到之前n版本 ,n 代表当前版本的之前n版本
    git reflog 查看命令历史以及版本信息
    git reset --hard 版本号 回退到指定版本号

    撤销三种情况 :
    (1)修改了工作区,没有提交到暂存区 : git checkout -- filename
    (2)修改了工作区,并add到了暂存区 : git reset HEAD filename
    (3)修改了工作区,并提交到本地版本库 :
    git reflog 查看提交历史版本号
    git reset --hard 指定版本号 (这个无需空格,hard后)

    4.Git 删除文件

    文件删除两种情况:
    1.删对了
    (1)rm filename(cmd命令) 工作区删除了该文件
    (2)git rm filename(git 命令) 版本库未删除,删除版本库
    2.删错了:
    (1)rm filename(cmd命令) 工作区删除了该文件
    (2) git checkout filename 从版本库将删除文件检出到工作区(即恢复文件)

    5.创建和合并分支

    (1)创建分支 git branch mybranch
    切换分支: git checkout mybranch
    (二合一)创建并切换分支: git checkout -b mybranch
    (2)合并分支到当前分支:git merge mybranch
    (3)合并完,删除分支:git branch -d mybranch

    6.解决冲突

    (1)git log --graph --pretty=oneline --abbrev-commit(查看分支 合并情况)
    (2)git log --graph (查看分支合并图)
    (3)git status 查看冲突信息。选择git add

    7.分支管理策略

    两种模式:
    (1)fast forward 默认
    (2)no ff : git merge --no-ff -m "merge with no-ff" mybranch 以no ff的形式合并分支{这样合并能看出历史合并分支}

    8.stash分支:(隐藏保存分支)

    修复bug时,我们会通过创建新的bug分支进行修复,然后合并,最后删除;当手头工作没有完成时,先把工作现场git stash一下,然后去修复bug,修复后,再git stash pop,回到工作现场

    (1)git stash 保存当前工作分支
    (2)git checkout master 切换到主分支或者bug修改分支修改Bug
    (3)git checkout mybranch 切换到工作分支
    (4)git stash list
    (5) git stash apply 恢复工作内容
    git stash drop 删除stash内容
    二合一:git stash pop

    9.git 删除分支

    两种情况:
    (1)合并完分支进行删除:git branch -d mybranch
    (2)未合并删除分支 : git branch -D mybranch

    10.查看远程库信息

    (1) git remote 查看远程库 git remote -v显示更详细的信息
    (2) git push origin master 将当前分支推送到master分支上了
    (3) git pull指定本地分支与远程分支的链接
    (4) git branch -a 查看远程仓库分支

    11.Git添加子模块

    (1) git submodule add url 子模块路径
    (2) git commit -m"提交子模块"
    (3) git push origin remotebranch 将改动push到远程库

    13.Git拉取远程分支

    两种方式
    (1)git fetch
    git fetch origin master:tmp 拉取远程分支到本地分支
    git diff tmp 比较查看区别
    git merge tmp 合并远程分支

    (2) git pull origin master
    git pull origin 远程分支名
    多人协作工作模式:

    1.将本地工作文件提交到本地仓库
    2.pull远程库最新内容
    3.merge本地冲突
    4.push本地分支

    相关文章

      网友评论

          本文标题:Git命令整理(子模块、基本的cmd命令)

          本文链接:https://www.haomeiwen.com/subject/fsauextx.html