• git的使用命令


    1、git的安装(略)
    2、安装完git后,打开git bash,输入以下命令进行设置
    $ git config --global user.name "Your Name"
    $ git config --global user.email "email@example.com"
    3、许多基本命令都是和linux一样的,都可以尝试着使用;
    4、本地版本控制
    $ git init   把当前目录初始化为Git仓库;
    $ git add filename    把文件添加到仓库,然后需进行下一条命令才有数据,git add .添加所有文件(但不包括被删除文件); git add -u 监控所有已经add过文件的修改,git add -A 所有;
    $ git commit -m "wrote a readme file"    把最新文件提交到仓库,-m 后边跟的是本次提交的说明;
    $ git status     查看仓库状态
    $ git diff    查看具体的改变内容(只能看到文本的);
    $ git log    显示从最近到最远的更新日志;
    $ git reflog    查看命令历史;
    $ git reset --hard HEAD^    回退到上一个版本,HEAD,当前版本,HEAD~10,当前版本的前10个版本;HEAD^还可以用指定的版本号替换,以退到某个已知的版本;
    $ git checkout filename    把指定文件恢复到最近一次git add时的状态;清空工作区修改
    $ git reset HEAD filename    把指定文件恢复到最近一次git commit时的状态,即已上传版本的最新状态;清空暂存区修改;
    $ git rm filename    删除文件,而后需要执行git commit操作才能把这个文件从版本库中删除;

    5、分支
    $ git checkout -b dev_name 创建一个只有自己能看到的分支,-b表示创建并切换到此分支;前边的master表示主分支(一般dev为开发分支),HEAD是指向master的指针;创建分支时其实只创建了一个指向master的指针dev_name,并把HEAD的指针指向了dev_name;
    $ git branch dev_name        创建分支;
    $ git checkout dev_name        切换到此分支;
    $ git branch             列出所有分支;
    $ git merge dev_name        将指定分支合并到当前分支;如果是快速模式,其实是把指定分支的指针指向当前分支;如果加上--no--ff参数,表示禁用Fast Forward快速合并模式;对于合并冲突时,可再提交一次add,commit,就会把两个冲突部分都列在一个文件中,同时完成合并;
    $ git branch -d dev_name    删除分支;-D大写的表示强制删除;
    $ git log --graph        查看分支合并图;
    $ git stash            把当前工作所有文档存储起来,以后可以此为基础恢复工作环境;
    $ git stash list        查看储存的临时工作现场;
    $ git stash apply        恢复工作现场到工作区;后边还可加@{n}来恢复指定的现场;
    $ git stash drop        删除储存的临时工作现场文件;
    $ git stash pop            恢复并删除工作现场文件;
    $ git tag tagname        为当前分支设定一个标签;默认为HEAD,也可指定一个commit id;
    $ git tag            查看所有标签;
    $ git show tagname        查看标签信息
    $ git tag -d tagname        删除标签;

    6、远程仓库
    $ ssh-keygen -t rsa -C "email_address"  创建SSH Key;
    $ git remote add origin git@web_address:web_username/repository_name.git  把本地仓库与远程已存在仓库关联;
    $ git push -u origin master    把本地仓库推送到远程仓库,origin是远程仓库的默认名字,可以修改;在第二次以后的推送就可以省略"-u";如果要推送其他分支,就把master换成相应分支名;
    $ git pull            把最新代码从仓库抓下来,其实前边的都可以不用,直接在此处后边添加远程仓库地址就可以;
    $ git clone git@web_address:web_username/web_repository_name.git    把远程库内容复制到本地;
    $ git remote            查看远程仓库信息,-v参数可显示更详细信息;
    $ git branch --set-upstream-to branch_name origin/branch_name
    $ git rebase        可将分叉提交历史整理成一条直线,但会修改本地分叉提交;
    $ git push origin tagname    推送一个本地标签;如果标签名写--tags则推送全部未推送的标签;
    $ git push origin :refs/tags/tagname    删除远程标签;

    7、可在仓库根目录创建一个.gitignore文件将想放在仓库又不想提交的文件名列入其中,git提交时就不会提示这个文件了;

      对于已经提交过的文件,.gitignore没有效果的,这种要使用:git update-index --assume-unchanged [file-path]
                             取消使用: git update-index --no-assume-unchanged [file-path]  

    8、git config --global aiias.name1 command    将name1配置为comman命令的别名,那么就可以使用name1来代替command了;

    9、多个远程仓库
    $ git remote add origin https://gitee.com/fsoooo/test.git 添加第一个远程仓库;
    $ git remote set-url --add origin https://github.com/fsooo/test.git 添加第二个远程仓库;
    $ git push origin --all 同时提交到多个远程仓库,或者直接git push也能提交到所有仓库

    #修改git的config文件,进行分开推送

    [remote "gitee"]
        url = https://github.com/aland-1415/mybatis-springboot.git
        fetch = +refs/heads/*:refs/remotes/origin/*
    
    $git push gitee master  把代码推送到gitee仓库
  • 相关阅读:
    JS中this指向问题(const self = this)
    nuxt.js中koa2写接口顺序
    关于Vue中的slot-scope="scope"
    Nuxt.js 中设置 div的css的 height 为100%
    nuxt报错:[nuxt] store/index.js should export a method that returns a Vuex instance.
    解决element UI中当value初始值存在空值时select只显示初始值,不显示placeholder值
    CSS控制一行显示两个li
    原生JS实现列表子元素顺序反转的方法分析
    Javascript 字符串全排列组合方法实现
    mysql引擎
  • 原文地址:https://www.cnblogs.com/aland-1415/p/9113596.html
Copyright © 2020-2023  润新知