工作中常用的git命令

1.仓库操作

    git init     //初始化

    git remote add origin url     //关联远程仓库

    git pull    //拉取远程仓库内容

    git fetch     //获取远程仓库中所有的分支到本地

    git update-index --assume-unchanged 文件名     //忽略单个文件,忽略已加入到版本库中的文件

    git rm -r --cached 文件/文件夹名字 /.     //忽略全部文件

    git update-index --no-assume-unchanged file        //取消忽略文件

    git config --global credential.helper store        //拉取、上传免密码
    
    创建仓库详解:
        1.命令行创建一个新的仓库
            git init 
            git add . 
            git commit -m "first commit" 
            git remote add origin http://ip:port/xxx/project.git 
            git push -u origin master

        2.从命令行推送已经创建的仓库
            git remote add origin http://ip:port/xxx/project.git 
            git push -u origin master
     fork其他仓库同步更新

        1.  git remote add upstream 源地址

        2. git merge upstream/master 更新到自己分支

        3. git push origin

2.代码量统计:

    git log --format='%aN' | sort -u | while read name; do echo -en "$name\t"; git log --author="$name" --pretty=tformat: --numstat | awk '{ add += $1; subs += $2; loc += $1 - $2 } END { printf "added lines: %s, removed lines: %s, total lines: %s\n", add, subs, loc }' -; done

    git log --format='%aN' | sort -u | while read name; do echo -en "$name\t"; git log --author="$name" --pretty=tformat: --numstat | awk '{ add += $1; subs += $2; loc += $1 - $2 } END { printf "提交的行数: %s, 删除的行数: %s, 实际行数: %s\n", add, subs, loc }' -; done

    
3.代码提交:

    git add .             //将所有改动提交到该分支暂存区

    git add 文件名         //将文件提交到该分支暂存区
    
    git add -f 文件名     //强制将文件提交

    git commit -m "待提交内容的说明"     //为add的内容加注释

    git commit --amend    //修改注释

    git pull origin 分支名 //拉取分支上所有的改动

    git push origin 分支名 //将add的改动和注释由暂存区提交到分支上,推送本地分支到远程仓库
    
    git cherry -v    //查看提交的内容

    git checkout 分支名     //要往哪个分支合并就写哪个分支名

    git merge 分支名         //要合并哪个分支就写哪个分支名

    git reset --hard origin/xxx    //如:当前分支是maser分支,我想讲xxx分支上的代码完全覆盖master分支,首先切换到master分支。

    git push -f    //执行上面的命令后master分支上的代码就完全被xxx分支上的代码覆盖了(本地分支),然后将本地分支强行推到远程分支。
    
    git rm -r --cached 文件/文件夹名字     //取消文件被版本控制

    git reflog     //获取执行过的命令

    git log --graph //查看分支合并图

    git merge --no-ff -m '合并描述' 分支名     //不使用Fast forward方式合并,采用这种方式合并可以看到合并记录

    git check-ignore -v 文件名     //查看忽略规则

    

4.暂存操作:

    git stash     //暂存当前修改

    git stash apply     //恢复最近的一次暂存

    git stash pop     //恢复暂存并删除暂存记录

    git stash list     //查看暂存列表

    git stash drop 暂存名    //移除某次暂存

    git stash clear     //清除暂存
    

   
5.回退操作:

    git reset --hard HEAD^         //回退到上一个版本,删除工作空间改动代码,撤销commit,撤销git add . 

    git reset --mixed HEAD^      //不删除工作空间改动代码,撤销commit,并且撤销git add . 操作

    git reset --soft  HEAD^        //不删除工作空间改动代码,撤销commit,不撤销git add . 

    git reset --hard ahdhs1(commit_id)     //回退到某个版本

    git checkout 文件名    //撤销修改的文件(如果文件加入到了暂存区,则回退到暂存区的,如果文件加入到了版本库,则还原至加入版本库之后的状态)

    git reset HEAD file     //撤回暂存区的文件修改到工作区

6.分支操作:

    git checkout 分支名        //切换分支
    
    git checkout -b 分支名    //自动创建分支并切换到创建后的分支
    
    git branch -a    //查看所有分支
    
    git branch        //查看当前使用的分支以及分支列表
    
    git branch -v     //查看所有分支的最后一次操作
    
    git branch -vv     //查看当前分支
    
    git brabch -b 分支名 origin/分支名     //创建远程分支到本地
    
    git branch --merged     //查看别的分支和当前分支合并过的分支
    
    git branch --no-merged     //查看未与当前分支合并的分支

    git branch -d 分支名     //删除本地分支

    git branch -D 分支名     //强行删除分支
    
    git push origin --delete 分支名    //删除远程分支

    git branch origin :分支名     //删除远处仓库分支

    git merge 分支名     //合并分支到当前分支上

    git fetch --all && git reset --hard origin/远程分支名 && git pull   //git强制覆盖本地分支(单条执行):

    
7.标签操作:

    git tag 标签名 //添加标签(默认对当前版本)

    git tag 标签名 commit_id     //对某一提交记录打标签

    git tag -a 标签名 -m '描述'     //创建新标签并增加备注

    git tag     //列出所有标签列表

    git show 标签名     //查看标签信息

    git tag -d 标签名     //删除本地标签

    git push origin 标签名     //推送标签到远程仓库

    git push origin --tags     //推送所有标签到远程仓库

    git push origin :refs/tags/标签名     //从远程仓库中删除标签

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值