git 命令

功能提交feat    修改提交fix

查看所在分支     git branch -a

git branch -d fix-118   /*删除本地分支*/

git remote -v
origin    git@github.com:zhongkebairong/sandbox.git (fetch)
origin    git@github.com:zhongkebairong/sandbox.git (push)

切换分支创建一个新的分支        git checkout -b fix-117(feat-118) (develop) /切换分支 git checkout fix-117

改好之后准备提交
修改提交
    git add .
    git commit -m "fix: 练习 (refs: #117)"

//覆盖提交
    git add.
    git commit --amend -m "feat: 练习 (refs: #117)"
    git push -f origin feat-117   //分支合并之后需要再一次的push一次

//功能提交
    git add.
    git commit -m "feat: 练习 (refs: #117)"
    git push -f origin feat-117

//分支合并
    选好分支之后git rebase -i HEAD~2
    合并之后再提交一次git push -f origin feat-117

vim
    下走一行 j
    上走一行 k
    石移动 l
    左移动 h
    删除一行 dd
    搜索 /搜索的内容    下一个 n
    最上 gg
    最下 G

    退出 :q
    退出不保存 :q!
    保存退出 :wq
    vim 模式下i进入编辑模式


#增加远程仓库,并命名
git remote add [shortname] [url]

#查看日志
git log

#查看文件
cat (index.html)
git add . 之后要回到暂停区 git reset HEAD
touch b建立b文件
echo 111 >> b  //b里面增加111
cat b 查看b文件  
git reset HEAD~2 --hard  后撤2是后撤的个数
git reset HEAD^  --hard  后撤到最初始
git reset HEAD           后撤的比较小
git push --force  后撤之后在强制推到仓库里

git log --oneline
    {
    542c2ca 做了修改
    da13964 增加了文档
    d6ddaa8 增加了文件
    1bccbc5 增加了一些信息
    405e077 第一次提交
    }



查看文件(包括隐藏文件) ls -l -a

保存账号密码  git config --global credential.helper wincred

克隆远程仓库
git clone https://github.com/wangding/test.git  //https
git@github.com:lyz8jj0/demo.git   //ssh

添加远程仓库链接
git remote add origin https://github.com/wangding/test.git    //https
git remote add origin git@github.com:wangding/test.git     //ssh

生成RSA密钥对
ssh-Keygen -t rsa -C "your email"

查看提交历史
git blame REAMDE.md    //REMADE.md 是要查看的文件名字
git blame -L 5,10 REAMDE.md //查看从第五行开始到第十行
    {
    lixinyu@lixinyu-X550JK:~/test/demo$ git status
    位于分支 master
    您的分支与上游分支 'origin/master' 一致。
    未跟踪的文件:
      (使用 "git add <文件>..." 以包含要提交的内容)

        b
        d

    提交为空,但是存在尚未跟踪的文件(使用 "git add" 建立跟踪)
    lixinyu@lixinyu-X550JK:~/test/demo$ git clean -n
    将删除 b
    将删除 d
    lixinyu@lixinyu-X550JK:~/test/demo$ git clean -f
    正删除 b
    正删除 d
    }

快捷键  vim ~/.gitconfig
    co = checkout
    ci = commit
    st = status -sb
    br = branch    
    hi = log --pretty=format:'%h %ad | %s%d [%an]' --graph --date=short
    ad = add .

//git add 深入
    #删除文件    rm a
    #编辑文件    git mv a b       a改名为b
    #移动文件    git mv b ./demos/    将b移动到demos下
    #查看变更    git diff

//git commit 深入
    1 git add .
      git commit -m "message"

    2 git commit -a -m "message"

    3 git commit -am "message"

    <type>(<scope>): <subject>
    //空一行
    <body>
    //空一行
    <footer>

    *feat:新功能(feature)
    *fix:修补bug
    *docs:文档(documentation)
    *style:格式(不影响代码运行的变动)
    *refactor:重构(即不是新增功能,也不是修改bug的代码变动)
    *test:增加测试
    *chore:构建过程或辅助工具的变动

//信息查看
    #short and branch
    git status -sb

    #查看某个提交信息
    git show HEAD

    #查看提交历史
    git log <file name>
    git log --grep <msg>
    git log -n
        git hi --grep add  //只查看add文件 (筛选)

    git diff //工作目录和暂存区差异
        git diff --cached //暂存区和版本库的区别(cached代表暂存区)
        git diff HEAD     //工作目录和版本的差异
        git diff 2efeea5 ca6a21e  //查看这两个版本之间的差别
    git diff HEAD~3 HEAD~ //查看两个版本之间的差别
    git tag maint HEAD~4 //给个tag
        git diff tt   //工作区到tag的差别
    git diff --cached tt //暂存区到tag的差别

//回撤操作(尽量在push之前,否则小伙伴会打你)
    #回撤暂存区内容到工作目录
    git reset HEAD

    #回撤提交到暂存区
    git reset HEAD --soft

    #回撤提交,放弃变更
    git reset HEAD --hard

    #回撤远程仓库,-f 即--force
    git push -f

    #回撤上一次提交
    git add .
    git commit --amend -m "message"

    #变基操作,改写历史提交
    git rebase -i HEAD~3

//标签操作git tag
    #在当前提交上,打标签foo
    git tag foo

    #在当前提交上,打标签foo,并给message信息注释
    git tag foo -m "message"

    #在当前提交之前在第4个版本上,打标签foo
    git tag foo HEAD~4

    #列出所有标签
    git tag

    #删除标签
    git tag -d foo

    #把标签推送到远程仓库
    git push origin --tags

    #把标签推送到远程仓库
    git push origin v0.1

    #删除本地标签后 推送到远程仓库
    git push origin :refs/tags/v0.0

//Git分支实例
    git branch foo         //开个foo分支
    git branch         //查看分支
    git branch -v         //查看不同分支提交的message
    git merge hotfix          //合并分支
    git co foo         //切换分支
    git checkout -b foo       //切换分支并同时切换到foo,一步到位

    #修改分支名字
    git branch -m old_name new_name(m一样的话会提示)
    git branch -M old_name new_name(M强制执行)

    #删除分支foo
    git branch -d foo()
    Git branch -D foo(D强制执行)

    #列出远程分支
    git branch -r

    #查看已合并的分支
    git branch --merged
    git branch --no-merged

    #列出远程合并的分支
    git branch -r --merged

    #取出远程foo分支
    git checkout -t origin/foo

    #删除远程分支
    git push origin <space>:<remote branch>
    git fetch -p

    #合并分支
    git merge <branch name>

    #合并分支,拒绝fast forward,产生合并commit
    git merge --no-ff

    #上传分支/*切换到相应分支后执行*/
    git push -u origin foo


//git stash
    #保存进度
    git stash

    #弹出进度
    git stash pop

    #查看stash列表
    git stash list

    #删除stash列表
    git stash clear

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值