zoukankan      html  css  js  c++  java
  • Git常用操作

    本地基本操作

    用户信息

    git config --global user.name "username"
    git config --global user.email "username@xxx.com"
    

    创建本地库

    git init  #使用某个目录作为git存储库,先进入这个目录,执行这个命令
    git init newDir  #创建目录并作为git存储库
    

    添加工作区文件到暂存区

    git add file1 file2
    git add .  #命令执行目录下的所有文件,包括子文件夹中的文件
    git add -u  #添加版本库已追踪的更新文件
    git add -A  #添加版本库已追踪和未追踪的文件
    

    提交暂存区文件到本地库

    git commit -m "注释说明"
    git commit --amend  #修改注释说明,输入这个命令后会出现修改区域,注意只能修改最近提交的注释
    git commit -a -m "注释说明"  #修改的跟踪文件一步完成添加到暂存区和提交操作
    

    恢复文件到工作区

    git checkout -- file1 file2  #把暂存区文件恢复到工作区
    git checkout 指定版本号 目标file  #从版本库中指定版本文件恢复到工作/暂存区
    

    执行这其中当中某个命令后相当于撤销了本地文件的更改,恢复到暂存区或者本地库一致的状态,这个操作比较危险,应特别注意!

    取消&删除&移动暂存区文件

    git reset file1  #从暂存区取消git add的文件,这个操作并不会改变本地版本库。
    git rm -r -n --cached ./  #预览要取消跟踪的文件
    git rm --cached file1  #从暂存区移除并取消跟踪文件
    git rm file1  #删除暂存区、git分支库和工作目录git跟踪的指定文件
    git mv file dir  #移动暂存区文件到指定目录
    

    版本库回退到之前的一个提交

    git reset --soft head^  #只将本地版本库回退到之前的一个提交,也可以将head^指定成commit-id
    git reset --mixed head^  #只将本地版本库和暂存区回退到之前的一个提交
    git reset --hard head^  #将本地版本库、暂存区和工作区回退到之前的一个提交
    

    恢复回退掉的提交

    git reset --hard commit-id  #可以通过git reflog命令查看commit-id信息
    

    本地辅助操作

    查看工作区状态

    git status
    git status -s  #简略的显示改动
    git status -uno  #未被版本库跟踪的文件不显示
    

    查看提交记录

    git log
    git log file  #指定文件的日志
    git log --pretty=oneline  #只显示提交的commit-id和说明
    git log --graph  #可以看到分支合并图
    
    

    查看所有操作记录

    git reflog
    

    文档对比

    本地分支操作

    查看分支信息

    git branch  #列出本地的分支
    git branch -r  #查看远程分支
    git branch -a  #包括远程的分支
    

    创建&切换分支

    git branch dev  #创建dev分支
    git checkout dev  #切换到dev分支上
    git checkout -b bug  #创建bug分支并切换到bug分支上
    

    合并分支

    git merge dev  #合并dev分支到当前分支
    git merge --no-ff -m "注释说明" branch  #不管有没有冲突文件都创建一个commit-id
    

    使用rebase合并分支

    git rebase dev  #合并dev分支
    git rebase --continue  #解决冲突之后执行git add .,然后执行这个命令继续合并分支
    git rebase --skip  #如果冲突文件解决了也git add .了,执行git rebase --continue命令没作用就执行这个命令
    git rebase --abort  #终止当前合并操作,使恢复到合并前的状态
    

    merge和rebase的区别

    merge 适用于团队合作分支的合并,rebase适用于对于本地个人使用的分支的合并

    移动重命名&删除分支

    git branch -m dev bug  #将dev分支重命名为bug分支
    git branch -d dev  #删除dev分支,如果有提交的话需要合并后才能删掉
    git branch -D bug  #强制删除
    

    储藏工作空间

    git stash  #储藏工作空间,如果希望把未跟踪的文件一起储藏,请先加到暂存区
    git stash list  #查看储藏记录
    git stash pop  #恢复并删除储藏记录
    git stash apply  #从最近一个储藏恢复
    git stash apply stash@{1}  #指定储藏恢复
    git stash drop  #删除最近的储藏
    git stash drop stash@{0}  #删除指定储藏
    git stash branch branchName  #从储藏中创建分支
    

    本地标签、归档

    创建标签

    git tag v1.0
    git tag -a v1.0  #进入文本框输入注释说明
    git tag -a v1.0 -m '注释说明'  #创建标签加注释说明一次完成
    git tag -a v1.3 commit-id -m '标签说明'  #适用提交记录创建标签
    git tag  #查看已有标签
    git show v1.1  #查看标签版本信息
    

    删除标签

    git tag -d v1.0
    

    归档
    打包

    远程库操作

    克隆

    git clone repoUrl
    git clone repoUrl newDir  #克隆远程库到本地创建的newDir目录
    

    远程库关联

    git remote add origin repoUrl
    git remote rm origin  #取消关联远程仓库
    git remote rename origin o1  #重命名远程库
    git remote -v  #所有远程库列表
    git remote show o1  #远程库详情
    

    远程分支操作

    git branch --set-upstream-to=origin/master master  #master分支关联
    git push origin dev  #创建远程分支,直接将本地创建的分支推送即可
    

    推送到远程分支

    git push -u origin master  #将分支master推送到远程库,第一次推送加-u参数关联master分支
    

    获取远程更新到本地

    git fetch origin  #不会覆盖暂存区和工作区
    git pull origin dev:dev
    git pull --rebase origin master  #解决推送时提示的failed to push some refs to git错误
    

    远程标签操作

    推送本地标签

    git push origin v1.0  
    git push origin --tags  #将所有未推送的标签推送到远程库
    

    删除远程标签

    git tag -d v1.0  #先删除本地标签
    git push origin :refs/tags/v1.0  #再删除远程标签
    

    远程协同操作

    打补丁&使用补丁

    git format-patch head^  #使用最近一次提交来创建补丁
    git apply 补丁.patch  #使用补丁
    git am 补丁.patch  #打完补丁并提交,一般先执行 git am --abort
    git diff  #对比文件,使用补丁后可以查看更改信息
    patch -R -p1 < 补丁.patch  #撤销使用的补丁
    

    邮件补丁

    待补充

    远程环境设置操作

    ssh-key设置

    ssh-keygen  -t rsa –C "账户邮箱"  #使用这个生成秘钥
    

    执行以上命令后,在操作系统的用户目录下找到.ssh文件,打开里面的id_rsa.pub,这个是公钥,将里面的内容拷贝,在游览器点开码云账户设置里面找到SSH公钥,添加公钥,标题随便填,然后把刚才拷贝的公钥粘贴到公钥value下,点确定,然后让你输入密码,完成!

    配置别名

    待补充

    忽略特殊文件

    待补充

  • 相关阅读:
    NSArray使用须知
    iOS设备闪光灯控制
    NSArray是强引用容器
    预处理指令#pragram
    iOS添加弹出菜单
    docker 进入容器的方式
    ThinkPHP链接 PgSQL
    Nginx 配置https证书
    Aliyun 域名解析配置七牛云 CNAME 解析
    git + github多人协作开发
  • 原文地址:https://www.cnblogs.com/yhongyin/p/11117877.html
Copyright © 2011-2022 走看看