使用python获得git中分支存成list

通过这个搜集git工程下的branch信息例子,来说明一下python和终端的信息交互,和字符串的简单处理。
代码如下:

?


1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

import os

import subprocess

def get_branches(project_dir):

    try:

        os.chdir(project_dir)        #转到工程路径下

    except Exception,error:

        print error

    branches_str = subprocess.check_output(["git", "branch"])

    #终端运行“git branch”命令,并且将终端的输出str转存到branches_str里 

    branches = branches_str.split(‘\n‘)

    #使用str的split方法将其按照‘\n‘分割

    branch_list = []

    for branch in branches[0:-1]:

        branch_list.append(branch.lstrip(‘* ‘))

        #使用str的lstrip方法将字符串的前的空格和当前branch前的“*”标记去除

    return branch_list

时间: 2024-10-25 16:47:34

使用python获得git中分支存成list的相关文章

git中分支操作

1.git branch -v 查看分支 2.git branch 分支名 (添加分支) 3.git checkout 分支名 (切换分支) 我们在dev 分支修改了first.txt 文件 添加了两行数据进行了提交 ,现在我们看到master,dev分支的提交信息有了变化,信息往前推进了 一步,已经比master分支领先了 4.合并分支(git merge 分支名) 我们合并dev分支到master分支上,首先切换到master分支上,执行命令 git merge dev   ,我们要指定合并

关于Git中分支merge和rebase的适用场景及区别

最近刚接触Git,下面对一些基本的使用做一下总结. 本文是转载于CSDN:http://blog.csdn.net/rryqsh/article/details/8230560 几乎所有的版本控制工具都有branch功能,branch主要用于以下几个场景: 1,控制产品OEM. 基本上做产品,不同的客户都会提出多种不同特性需求,最简单的例子就是LOGO和标题完全不一样.但是可能产品自身的大部分功能和模块的代码一样的,这个时候如何管理多个客户定制的功能特性,并且不会干扰其他OEM版本的功能呢? 如

关于Git的分支

分支是代码管理的利器.如果没有有效的分支管理.代码管理就适应不了复杂的开发过程和 项目的需要. 分支命令概述: 在Git中分支管理使用命令git branch.该命令的主要用法如下: 用法一: git branch 用法二: git branch <branchname> 用法三: git branch <branchname> <start-point> 用法四: git branch -d <branchname> 用法五: git branch -D

python将dict中的unicode打印成中文

python将dict中的unicode打印成中文 import json a = {u'content': {u'address_detail': {u'province': u'\u5409\u6797\u7701', u'city': u'\u957f\u6625\u5e02', u'street_number': u'', u'district': u'', u'street': u'', u'city_code': 53}, u'point': {u'y': u'43.89833761

【原创】Git删除暂存区或版本库中的文件

0 基础 我们知道Git有三大区(工作区.暂存区.版本库)以及几个状态(untracked.unstaged.uncommited),下面只是简述下Git的大概工作流程,详细的可以参见本博客的其他有关Git的文章[链接]. (1)打开你的项目文件夹,除了隐藏的.git文件夹,其他项目文件位于的地方便是工作区,工作区的文件需要添加到Git的暂存区(git add),随后再提交到Git的版本库(git commit). (2)首次新建的文件都是untracked状态(未跟踪),此时需要git add

Git中从远程的分支获取最新的版本到本地

Git中从远程的分支获取最新的版本到本地有这样2个命令: 1. git fetch:相当于是从远程获取最新版本到本地,不会自动merge git fetch origin master git log -p master..origin/master git merge origin/master 以上命令的含义: 首先从远程的origin的master主分支下载最新的版本到origin/master分支上 然后比较本地的master分支和origin/master分支的差别 最后进行合并 上述

ecplise中git创建分支/提交分支/合并分支操作

ecplise中git创建分支/提交分支/合并分支操作 标签: git分支分支合并分支提交 2015-10-21 12:12 661人阅读 评论(0) 收藏 举报  分类: git(5)  版权声明:本文为博主原创文章,未经博主允许不得转载. 1创建分支 1.1项目右键-->team-->switch to -->new branch.选择原始分支和新建分支名称(一般项目名称+人名+时间).  1.2切换分支(项目右键->team->switch to ->分支名称),

git中remotes/origin/HEAD指向的分支丢失

当用git查看分支的时候,末尾会提示一个错误信息: $ git branch -av ...... ...... error: some refs could not be read 查了下几个分支都是正在用的,一直没有找到问题所在,偶然用branch -a查看到remotes/origin/HEAD指向了一个不存在的分支: $ git branch -a ...... remotes/origin/HEAD -> origin/www ...... origin/www这个分支以前有用过,后来

工作中常见的Git本地分支与远程分支同步场景

Git 是一个开源的分布式版本控制系统,可以有效.高速地处理从很小到非常大的项目版本管理. ??一直以来本人使用 Git 处理分支都是现用现查,一是因为怕出错,二还是因为懒,作为一名四年开发经验的前端来说,可以说是一件比较尴尬的事情,为避免某天在众人面前出糗,现默默总结记忆下,告别懒惰.(:面子也是进步的动力呢! ??多分支开发便于版本管理,便于协同开发,这需要本地分支与远程分支分别建立 track 关系,如果未 track , push 和 pull 等命令将无法正常实现.本文针对常见的三种场