zoukankan      html  css  js  c++  java
  • git使用总结

    git branch的使用方法:

    1、创建本地分支 local_branch
    git branch local_branch

    2、创建远程分支remote_branch对应的本地分支local_branch, 并切换到local_branch分支
    git checkout -b local_branch remote_branch


    3、切换到分支local_branch
    git checkout local_branch


    4、推送本地分支local_branch到远程分支 remote_branch并建立关联关系
    a.远程已有remote_branch分支并且已经关联本地分支local_branch且本地已经切换到local_branch
    git push

    b.远程已有remote_branch分支但未关联本地分支local_branch且本地已经切换到local_branch
    git push -u origin/remote_branch

    c.远程没有remote_branch分支并,本地已经切换到local_branch
    git push origin local_branch:remote_branch

    5、删除本地分支local_branch
    git branch -d local_branch

    6、删除远程分支remote_branch
    git push origin :remote_branch
    git branch -d | -D branchname 删除branchname分支
    git branch -d -r branchname 删除远程branchname分支

    7、重命名分支
    git branch -m | -M oldbranch newbranch 重命名分支,如果newbranch名字分支已经存在,则需要使用-M强制重命名,否则,使用-m进行重命名。

    8、查看本地分支
    git branch

    9、查看远程和本地分支
    git branch -a


    10、查看远程分支
    git branch -r

    11、查看远程分支和本地分支的对应关系
    git branch -vv

    12、 批量删除分支

    git branch  | cut -c3- | egrep "^3.2" | xargs git branch -D
      ^                ^                ^         ^ 
      |                |                |         |--- create arguments
      |                |                |              from standard input
      |                |                |
      |                |                |---your regexp 
      |                |
      |                |--- skip asterisk 
      |--- list all 
           local
           branches

    git tag的使用方法

    Git 中的tag指向一次commit的id,通常用来给开发分支做一个标记,如标记一个版本号。
    1.打标签
    git tag -a v1.01 -m "Relase version 1.01"
    注解:git tag 是打标签的命令,-a 是添加标签,其后要跟新标签号,-m 及后面的字符串是对该标签的注释。

    2.提交标签到远程仓库

    git push origin v0.1.2 # 将v0.1.2标签提交到git服务器
    git push origin --tags # 将本地所有标签一次性提交到git服务器
    注解:就像git push origin master 把本地修改提交到远程仓库一样,-tags可以把本地的打的标签全部提交到远程仓库。

    3.删除标签
    git tag -d v1.01
    注解:-d 表示删除,后面跟要删除的tag名字

    4.删除远程标签
    git push origin :refs/tags/v1.01
    注解:就像git push origin :branch_1 可以删除远程仓库的分支branch_1一样, 冒号前为空表示删除远程仓库的tag。

    5.查看标签
    git tag
    或者
    git tag -l

    git stash的使用方法

    git stash save xxxx 暂存代码,可以把本地一些不需要提交的改动存在stash,每次取完代码,使用git stash apply
    git stash list 存储列表
    git stash apply stash@{0} 使用暂存0

    查看代码暂存,代码提交历史tig .
    查看stash list:打开tig,输入h显示帮助,可看到输入y。

    git svn的使用方法

    1.update code
    git svn fetch 获取服务器的最新代码
    git svn rebase 合并当前代码和服务器的代码
    2.commit code
    1. update code 通步骤1
    2.git merge
    3.git commit -s /git commit --amend
    3.git svn dcommit

    git 合并分支方法

    平时可以用git checkout -b 创建新的分支进行修改,修改后merge到主分支
    使用--no-ff参数后,会执行正常合并,在Master分支上生成一个新节点。为了保证版本演进的清晰,我们希望采用这种做法。
    git checkout master
    git merge --no-ff develop

    git 查看文件的修改历史

    查看单个文件的改动历史:方法1: tig XXX 文件名 方法2:gitk [filename](注意没有.)
    查看某行的改动历史:git blame -L 30,40 XX文件名

    比较两次提交:

    git diff这个命令能比较两个提交之间的差异,使用–name-only参数可以只显示文件名
    git diff commit-id1 commit-id2 --name-only

    git配置:

    git修改签名(Signed-off-by):

           git config --global user.name "Your Name Comes Here"
        git config --global user.email you@yourdomain.example.com
    git其他配置:
      git config --global color.ui auto
      git config --global alias.st status
      git config --global alias.ci commit
      git config --global alias.co checkout
      git config --global alias.br branch
    git config --global alias.lol "log --graph --decorate --pretty=oneline --abbrev-commit"
    git config --global core.editor vim

    git忽略文件

    如果某些文件已经被跟踪了, 再放入到.gitinore可能会失效, 用以下命令来忽略
    git update-index --assume-unchanged filename

    撤销用:
    git update-index --no-assume-unchanged filename

    git中文文件名乱码解决方法

    通过将Git配置变量 core.quotepath 设置为false,就可以解决中文文件名称在这些Git命令输出中的显示问题
    $ git config --global core.quotepath false

    git打patch

    1)两个节点之间的提交: git format-patch 节点A 节点B
    2)单个节点: git format-patch -1 节点A (-n就表示要生成几个节点的提交)
    3)最近一次提交节点的patch :git format-patch HEAD^ 依次类推……
    使用git format-patch命令生成的patch文件,包含了提交的附加信息:比如作者,时间等。再次基础上使用git am命令即可将此补丁应用到当前分支。注意应用完之后,你会发现当前分支多了一次提交记录,并且有完整的信息,而不是简单的修改文件

  • 相关阅读:
    CentOS7_装机软件推荐
    http://www.osyunwei.com/archives/4788.html
    SQL经典面试题集锦
    异步方式
    webwxgetcontact 获取的是通讯录里的群或好友的信息
    perl 微信取自己的ID
    perl weixin 发消息接口 webwxsendmsg
    Invalid project description.
    运行期间id是不变的
    关于微信 init接口返回的Count和webwxbatchgetcontact post请求的参数Count
  • 原文地址:https://www.cnblogs.com/androidstudy/p/5092173.html
Copyright © 2011-2022 走看看