WO2019062316A1 - 基于机顶盒项目的svn服务器管理方法及系统 - Google Patents

基于机顶盒项目的svn服务器管理方法及系统 Download PDF

Info

Publication number
WO2019062316A1
WO2019062316A1 PCT/CN2018/097802 CN2018097802W WO2019062316A1 WO 2019062316 A1 WO2019062316 A1 WO 2019062316A1 CN 2018097802 W CN2018097802 W CN 2018097802W WO 2019062316 A1 WO2019062316 A1 WO 2019062316A1
Authority
WO
WIPO (PCT)
Prior art keywords
code
project
shared
svn server
top box
Prior art date
Application number
PCT/CN2018/097802
Other languages
English (en)
French (fr)
Inventor
王华泽
Original Assignee
深圳市九洲电器有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 深圳市九洲电器有限公司 filed Critical 深圳市九洲电器有限公司
Publication of WO2019062316A1 publication Critical patent/WO2019062316A1/zh

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/06Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/20Software design
    • G06F8/22Procedural
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • G06F8/71Version control; Configuration management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44536Selecting among different versions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/34Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters 
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/443OS processes, e.g. booting an STB, implementing a Java virtual machine in an STB or power management in an STB
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/443OS processes, e.g. booting an STB, implementing a Java virtual machine in an STB or power management in an STB
    • H04N21/4431OS processes, e.g. booting an STB, implementing a Java virtual machine in an STB or power management in an STB characterized by the use of Application Program Interface [API] libraries
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/81Monomedia components thereof
    • H04N21/8166Monomedia components thereof involving executable data, e.g. software

Definitions

  • the present application relates to the field of digital television, and in particular, to a SVN server management method and system based on a set top box project.
  • SVN (SVN is short for Subversion, an open source version management tool that uses a branch management system).
  • the server is the core of centralized code management. All developers with project permissions need to be from the SVN server before starting a new job. Obtain and update the code resources, and then upload and submit the modified code in the work, so that multiple people can jointly develop the same project and share resources, so there are code updates on the SVN server every day.
  • Each item based on the set-top box has a separate directory on the SVN server, and each directory mostly includes six layers of code: bll, server, board, hal, osal, and vendor.
  • Each engineer can download the code of the corresponding project to the server used by the individual to compile and run when he has the permission.
  • the SVN server management method based on the set top box project provided by the application includes the following steps:
  • the step S10 is specifically: dividing the six-layer code of the set-top box project bll, server, board, hal, osal, and vendor, and dividing the three layers of codes hal, osal, and vendor into sharing.
  • the code, and the three-layer interface is uniformly packaged and placed in a shared folder.
  • the step S20 is specifically: dividing the three layers of code bll, server, and board into specialization codes, and storing them in the project folder.
  • the step S30 is specifically: linking the hal, osal, and vendor layers of the item to the hal, osal, and vendor layers in the shared code by means of soft links.
  • the SVN server management system based on the set top box project provided by the application includes:
  • the code division unit divides the code on the SVN server into a shared code and a specialization code, and stores the shared code on the SVN server and stores it in a pre-created shared folder;
  • a project folder creation unit for each item of the set top box, a project folder is created on the SVN server, and the project folder is used to store the specialization code of each item;
  • the project code download unit downloads the shared code from the shared folder of the SVN server and links the shared code by means of a soft link when the project needs to be compiled, and downloads the specialization code from the project folder.
  • the code division unit divides the six layers of code of the set top box project bll, server, board, hal, osal, and vendor, and divides the three layers of code hal, osal, and vendor into the shared code.
  • the three-layer interface is uniformly packaged and placed in a shared folder.
  • the code division unit divides the three layers of code bll, server, and board into specialization codes, and stores them in a project folder.
  • the project code download unit links the hal, osal, and vendor layers of the project to the hal, osal, and vendor layers in the shared code by means of soft links.
  • An electronic device provided by the present application includes:
  • At least one processor At least one processor
  • the memory stores instructions executable by the at least one processor, the instructions being executed by the at least one processor to enable the at least one processor to perform the methods described above.
  • the application is based on the SVN server management method and system of the set-top box project, and divides the project code on the SVN server according to whether it can be shared, divides the common code and stores only one copy on the SVN server, and is shared by multiple set-top box projects to avoid
  • Each project stores the shared code once, which reduces the storage space of the SVN server, greatly reduces the pressure on the storage space and operating rate of the SVN server, improves the running speed of the SVN server, ensures the developer's work efficiency, and reduces the maintenance staff's troubles. Maintenance costs.
  • FIG. 1 is a flow chart of a SVN server management method based on a set top box item in an embodiment
  • FIG. 2 is a structural diagram of an SVN server management system based on a set top box item in an embodiment
  • Fig. 3 is a structural diagram of an electronic device in an embodiment.
  • the method of the present application divides and manages the code on the SVN server, and only one copy is shared for each project in the SVN server for the shared code. Thereby reducing the storage space of the SVN server and improving the operating efficiency.
  • the method includes the following steps:
  • S10 Divide the code on the SVN server into a shared code and a specialization code, and store the shared code on the SVN server and store it in a pre-created shared folder.
  • the step of the embodiment divides the code on the SVN server, and divides the code into a shared code and a specialization code according to whether it can be shared.
  • the specialization code is shared and consistent for each project, and the specialization code is specially tailored for each project, and other projects cannot be used.
  • the shared code is only stored on the SVN server for sharing by all projects. Create a shared folder storage sharing code in advance to make it easy to find downloads.
  • each item in the set-top box contains six layers of code: bll, server, board, hal, osal, and vendor.
  • the six layers of code are divided.
  • the three layers of hal, osal, and vendor are divided into common
  • the code, and the three-layer interface is uniformly packaged and placed in a shared folder.
  • the method step After dividing the shared code, there is a specialization code for each item.
  • the method step establishes a project folder for each project on the SVN server to distinguish each project, and is used to store the special code of each project, which is convenient for fast. Find and store separately.
  • the three layers of code bll, server, and board are divided into special-purpose codes and stored in the project folder.
  • the developer needs to compile the project, you need to download the two parts of the code to compile, that is, the shared code and the special code. Since the shared code is shared by all projects, the downloaded shared code needs to link the corresponding part of each item to the code corresponding to the shared code by means of a soft link.
  • the hal, osal, and vendor layers of the project are respectively linked to the hal, osal, and vendor layers in the shared code by means of soft links.
  • the SVN server management method based on the set-top box project divides the project code on the SVN server according to whether it can be shared, divides the common code and stores only one copy on the SVN server, and is shared by multiple set-top box projects, avoiding each project.
  • the shared code is stored once, which reduces the storage space of the SVN server, greatly reduces the pressure on the SVN server storage space and operating rate, improves the running speed of the SVN server, ensures the developer's work efficiency, and reduces the maintenance staff's troubles and maintenance costs.
  • the application also provides an SVN server management system based on a set top box project, as shown in FIG. 2, the system includes:
  • the code dividing unit 100 divides the code on the SVN server into a shared code and a specialization code, and stores the shared code on the SVN server and stores it in a pre-created shared folder.
  • the code division unit 100 divides the code on the SVN server, and divides the code into a shared code and a special purpose according to whether it can be shared. Code.
  • the specialization code is shared and consistent for each project, and the specialization code is specially tailored for each project, and other projects cannot be used.
  • the shared code is only stored on the SVN server for sharing by all projects. Create a shared folder storage sharing code in advance to make it easy to find downloads.
  • each item in the set-top box mostly includes six layers of code: bll, server, board, hal, osal, and vendor, and the code division unit 100 divides the six-layer code, wherein the three layers of hal, osal, and vendor are coded. Divided into shared code, and the three-layer interface is uniformly packaged and placed in a shared folder.
  • the project folder creating unit 200 creates a project folder on the SVN server for each item of the set top box, and the project folder is used to store the specialization code of each item.
  • the project folder creating unit 200 After dividing the shared code, there is a specialization code for each item.
  • the project folder creating unit 200 creates a project folder for each project on the SVN server to distinguish each project, and stores a specialization code for each project. For quick searching and separate storage.
  • the code division unit 100 divides the three layers of codes bll, server, and board into specialization codes, and stores them in the project folder.
  • the item code download unit 300 when the item needs to be compiled, downloads the sharing code from the SVN server shared folder and links the sharing code by means of a soft link, and downloads the specialization code from the project folder.
  • the item code download unit 300 needs to link the corresponding part of each item to the code corresponding to the shared code by means of a soft link for the downloaded shared code.
  • the item code download unit 300 links the hal, osal, and vendor layers of the item to the hal, osal, and vendor layers in the shared code by means of soft links.
  • the SVN server management system based on the set-top box project divides the project code on the SVN server according to whether it can be shared, divides the common code and stores only one copy on the SVN server, and is shared by multiple set-top box projects, avoiding each project.
  • the shared code is stored once, which reduces the storage space of the SVN server, greatly reduces the pressure on the SVN server storage space and operating rate, improves the running speed of the SVN server, ensures the developer's work efficiency, and reduces the maintenance staff's troubles and maintenance costs.
  • the present application further provides an electronic device, where the electronic device 400 includes:
  • One or more processors 41 and memory 42 are taken as an example in FIG.
  • the processor 41 and the memory 42 can be connected by a bus or other means, and the connection by a bus is taken as an example in FIG.
  • the memory 42 is a non-volatile computer readable storage medium that can be used to store non-volatile software programs, non-volatile computer-executable programs, and modular units, such as a set-top box project in the above-described embodiments of the present application.
  • the program instruction corresponding to the SVN server management method and an SVN server management system based on the set top box item for example, the code division unit 100, the project folder creation unit 200, the item code download unit 300, and the like).
  • the processor 41 executes various functional applications and data processing of a set-top box item-based SVN server management method by executing non-volatile software programs, instructions, and module units stored in the memory 42, that is, implementing the above method embodiments One of the SVN server management methods based on the set top box item and the functions of the respective module units of the above device embodiments.
  • the memory 42 may include a storage program area and a storage data area, wherein the storage program area may store an operating system, an application required for at least one function; and the storage data area may store an application of the SVN server management system according to a set top box item. Created data, etc.
  • memory 42 may include high speed random access memory, and may also include non-volatile memory, such as at least one magnetic disk storage device, flash memory device, or other non-volatile solid state storage device.
  • memory 42 may optionally include memory remotely located relative to processor 41, which may be coupled to processor 41 via a network. Examples of such networks include, but are not limited to, the Internet, intranets, local area networks, mobile communication networks, and combinations thereof.
  • the program instructions and one or more modules are stored in the memory 42 and, when executed by the one or more processors 41, perform a SVN server management method based on a set top box item in any of the above method embodiments.
  • the various steps, or the functions of the various modular units of the SVN server management system based on the set top box item, are implemented in any of the above embodiments.
  • the embodiment of the present application further provides a non-transitory computer readable storage medium storing computer executable instructions executed by one or more processors, such as FIG.
  • One of the processors 41 may cause the computer to perform the steps of the SVN server management method based on the set top box item in any of the foregoing method embodiments, or implement a set top box item based SVN server in any of the above device embodiments.
  • the embodiment of the present application further provides a computer program product, the computer program product comprising a computer program stored on a non-transitory computer readable storage medium, the computer program comprising program instructions, when the program instruction is Or a plurality of processors executing, for example, a processor 41 in FIG. 3, may cause the computer to perform various steps of a set-top box item-based SVN server management method in any of the above method embodiments, or implement any of the above-described device embodiments One of the functions of each module unit of the SVN server management system based on the set top box project.
  • module units described as separate components may or may not be physically separated, and the components displayed as modules may or may not be physical units, ie Located in one place, or distributed to multiple network units. Some or all of the modules may be selected according to actual needs to achieve the purpose of the solution of the embodiment.
  • the embodiments can be implemented by means of software plus a general hardware platform, and of course, by hardware.
  • a person skilled in the art can understand that all or part of the process of implementing the above embodiments can be completed by computer program related hardware, and the program can be stored in a computer readable storage medium, and the program is executed.
  • the flow of the method of implementation of each of the above methods may be included.
  • the storage medium may be a magnetic disk, an optical disk, a read-only memory (ROM), or a random access memory (RAM).

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Signal Processing (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Computer Security & Cryptography (AREA)
  • Library & Information Science (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Stored Programmes (AREA)

Abstract

本申请涉及一种基于机顶盒项目的SVN服务器管理方法及系统,将SVN服务器上的项目代码根据是否能够共用进行划分,划分出共用性代码并只在SVN服务器上存储一份,供多个机顶盒项目共用,避免每个项目都存储一次共用性代码,从而减少SVN服务器存储空间的占用,大大降低SVN服务器存储空间和运行速率的压力,提高SVN服务器运行速度,保证开发者的工作效率,同时减少维护人员困扰和维护成本。

Description

基于机顶盒项目的SVN服务器管理方法及系统
本申请要求于2017年9月27日提交中国专利局,申请号为2017108925998,发明名称为“基于机顶盒项目的SVN服务器管理方法及系统”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
技术领域
本申请涉及数字电视领域,尤其涉及一种基于机顶盒项目的SVN服务器管理方法及系统。
背景技术
SVN(SVN是Subversion的简称,是一个开放源代码的版本管理工具,采用分支管理系统)服务器是集中式代码管理的核心,拥有项目权限的所有开发者在开始新工作前均需要从SVN服务器上获取、更新代码资源,然后在工作中去上传提交修改后的代码,这样就达到多人共同开发同一个项目,共用资源的目的,因此每天SVN服务器上均有代码更新。
基于机顶盒的每个项目在SVN服务器上均有独立目录,且每个目录大都包括bll、server、board、hal、osal、vendor六层的代码。每位工程师在有权限的情况下,均可以下载相应项目的代码至个人所用服务器上进行编译及运行。
但是,随着机顶盒业务的不断拓展,其项目也不断增多,上传代码也暴增,这都给SVN服务器无论在存储空间还是在运行速率上均造成非常大的压力,使得SVN服务器存储空间严重不足,影响SVN服务器运行速度,致使SVN服务器运行缓慢,极大影响到开发者的工作效率,同时也给维护人员带来很大的困扰,增加维护成本。
发明内容
有鉴于此,有必要针对上述机顶盒项目增多给SVN服务器造成很大压力,影响开发效率的问题,提供一种基于机顶盒项目的SVN服务器管 理方法及系统。
本申请提供的一种基于机顶盒项目的SVN服务器管理方法,包括如下步骤:
S10:对SVN服务器上的代码进行划分,划分为共用化代码和特用化代码,将共用化代码在SVN服务器上只存储一份并存储在预先创建的共用文件夹中;
S20:对于机顶盒的每个项目,在SVN服务器上均建立一个项目文件夹,项目文件夹用来存储每个项目的特用化代码;
S30:在需要对项目进行编译时,由SVN服务器共用文件夹中下载共用化代码并通过软链接的方式链接共用化代码,由项目文件夹中下载特用化代码。
在其中的一个实施例中,所述步骤S10具体为:对机顶盒项目的bll、server、board、hal、osal、vendor六层代码进行划分,将hal、osal、vendor这三层代码划分为共用化代码,并将这三层接口采用统一封装后放入共用文件夹中。
在其中的一个实施例中,所述步骤S20具体为:将bll、server、board这三层代码划分为特用化代码,并存储在项目文件夹中。
在其中的一个实施例中,所述步骤S30具体为:将项目的hal、osal、vendor层通过软链接的方式,分别链接至共用化代码中的hal、osal、vendor层。
本申请提供的一种基于机顶盒项目的SVN服务器管理系统,包括:
代码划分单元,对SVN服务器上的代码进行划分,划分为共用化代码和特用化代码,将共用化代码在SVN服务器上只存储一份并存储在预先创建的共用文件夹中;
项目文件夹创建单元,对于机顶盒的每个项目,在SVN服务器上均建立一个项目文件夹,项目文件夹用来存储每个项目的特用化代码;
项目代码下载单元,在需要对项目进行编译时,由SVN服务器共用文件夹中下载共用化代码并通过软链接的方式链接共用化代码,由项目文件夹中下载特用化代码。
在其中的一个实施例中,所述代码划分单元对机顶盒项目的bll、server、board、hal、osal、vendor六层代码进行划分,将hal、osal、vendor这三层代码划分为共用化代码,并将这三层接口采用统一封装后放入共用文件夹中。
在其中的一个实施例中,所述代码划分单元将bll、server、board这三层代码划分为特用化代码,并存储在项目文件夹中。
在其中的一个实施例中,所述项目代码下载单元将项目的hal、osal、vendor层通过软链接的方式,分别链接至共用化代码中的hal、osal、vendor层。
本申请提供的一种电子设备,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行以上所述的方法。
本申请基于机顶盒项目的SVN服务器管理方法及系统,将SVN服务器上的项目代码根据是否能够共用进行划分,划分出共用性代码并只在SVN服务器上存储一份,供多个机顶盒项目共用,避免每个项目都存储一次共用性代码,从而减少SVN服务器存储空间的占用,大大降低SVN服务器存储空间和运行速率的压力,提高SVN服务器运行速度,保证开发者的工作效率,同时减少维护人员困扰和维护成本。
附图说明
一个或多个实施例通过与之对应的附图中的图片进行示例性说明, 这些示例性说明并不构成对实施例的限定,附图中具有相同参考数字标号的元件表示为类似的元件,除非有特别申明,附图中的图不构成比例限制。
图1是一个实施例中的基于机顶盒项目的SVN服务器管理方法的流程图;
图2是一个实施例中的基于机顶盒项目的SVN服务器管理系统的结构图;
图3是一个实施例中的电子设备的结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本申请,并不用于限定本申请。
在SVN服务器上存储的项目代码中,一部分代码是各个项目可以共用且一致的,一部分代码是每个项目所特制特用的,本申请中将可以共用的代码称之为共用化代码,将每个项目所特用的代码称之为特用化代码。由于共用化代码是每个项目都必须用到且可以共用、一致的,故本申请方法将SVN服务器上的代码进行划分管理,对于共用化代码在SVN服务器只存储一份供每个项目共用,从而减少SVN服务器存储空间的占用,提高运行效率。
具体的,如图1所示,该方法包括如下步骤:
S10:对SVN服务器上的代码进行划分,划分为共用化代码和特用化代码,将共用化代码在SVN服务器上只存储一份并存储在预先创建的共用文件夹中。
为对SVN服务器上的代码进行管理,以能够减少存储空间的占用,该实施例步骤对SVN服务器上的代码进行划分,将代码根据是否能够共用划分为共用化代码和特用化代码。特用化代码每个项目共用且一致,特用化代码为每个项目单独特制特用,其他项目不能用。对于所有项目, 共用化代码在SVN服务器上只存储一份,供所有项目共用。预先创建共用文件夹存储共用化代码,便于查找下载。
具体的,在机顶盒的每个项目大都包含bll、server、board、hal、osal、vendor六层代码,则对六层代码进行划分,其中,将hal、osal、vendor这三层代码划分为共用化代码,并将这三层接口采用统一封装后放入共用文件夹中。
S20:对于机顶盒的每个项目,在SVN服务器上均建立一个项目文件夹,项目文件夹用来存储每个项目的特用化代码。
在划分出共用化代码后,对于每个项目还有特用化代码。为能对每个项目进行快速的查找,该方法步骤在SVN服务器上为每个项目均建立一个项目文件夹用来区分每个项目,并且用来存储每个项目的特用化代码,便于快速查找和分别存储。
对于机顶盒的每个项目,将bll、server、board这三层代码划分为特用化代码,存储在项目文件夹中。
S30:在需要对项目进行编译时,由SVN服务器共用文件夹中下载共用化代码并通过软链接的方式链接共用化代码,由项目文件夹中下载特用化代码。
在开发人员需要对项目进行编译时,需要下载两部分的代码即可进行编译,即共用化代码和特用化代码。由于共用化代码供所有项目共用,对于下载下来的共用化代码需要通过软链接的方式将每个项目的相应部分链接到共用化代码对应的代码。
具体的,将项目的hal、osal、vendor层通过软链接的方式,分别链接至共用化代码中的hal、osal、vendor层。
该基于机顶盒项目的SVN服务器管理方法,将SVN服务器上的项目代码根据是否能够共用进行划分,划分出共用性代码并只在SVN服务器上存储一份,供多个机顶盒项目共用,避免每个项目都存储一次共用性代码,从而减少SVN服务器存储空间的占用,大大降低SVN服务器存储 空间和运行速率的压力,提高SVN服务器运行速度,保证开发者的工作效率,同时减少维护人员困扰和维护成本。
同时,本申请还提供一种基于机顶盒项目的SVN服务器管理系统,如图2所示,该系统包括:
代码划分单元100,对SVN服务器上的代码进行划分,划分为共用化代码和特用化代码,将共用化代码在SVN服务器上只存储一份并存储在预先创建的共用文件夹中。
为对SVN服务器上的代码进行管理,以能够减少存储空间的占用,该实施例中,代码划分单元100对SVN服务器上的代码进行划分,将代码根据是否能够共用划分为共用化代码和特用化代码。特用化代码每个项目共用且一致,特用化代码为每个项目单独特制特用,其他项目不能用。对于所有项目,共用化代码在SVN服务器上只存储一份,供所有项目共用。预先创建共用文件夹存储共用化代码,便于查找下载。
具体的,在机顶盒的每个项目大都包含bll、server、board、hal、osal、vendor六层代码,代码划分单元100则对六层代码进行划分,其中,将hal、osal、vendor这三层代码划分为共用化代码,并将这三层接口采用统一封装后放入共用文件夹中。
项目文件夹创建单元200,对于机顶盒的每个项目,在SVN服务器上均建立一个项目文件夹,项目文件夹用来存储每个项目的特用化代码。
在划分出共用化代码后,对于每个项目还有特用化代码。为能对每个项目进行快速的查找,项目文件夹创建单元200在SVN服务器上为每个项目均建立一个项目文件夹用来区分每个项目,并且用来存储每个项目的特用化代码,便于快速查找和分别存储。
对于机顶盒的每个项目,代码划分单元100将bll、server、board这三层代码划分为特用化代码,存储在项目文件夹中。
项目代码下载单元300,在需要对项目进行编译时,由SVN服务器 共用文件夹中下载共用化代码并通过软链接的方式链接共用化代码,由项目文件夹中下载特用化代码。
在开发人员需要对项目进行编译时,需要下载两部分的代码即可进行编译,即共用化代码和特用化代码。由于共用化代码供所有项目共用,项目代码下载单元300对于下载下来的共用化代码需要通过软链接的方式将每个项目的相应部分链接到共用化代码对应的代码。
具体的,项目代码下载单元300将项目的hal、osal、vendor层通过软链接的方式,分别链接至共用化代码中的hal、osal、vendor层。
该基于机顶盒项目的SVN服务器管理系统,将SVN服务器上的项目代码根据是否能够共用进行划分,划分出共用性代码并只在SVN服务器上存储一份,供多个机顶盒项目共用,避免每个项目都存储一次共用性代码,从而减少SVN服务器存储空间的占用,大大降低SVN服务器存储空间和运行速率的压力,提高SVN服务器运行速度,保证开发者的工作效率,同时减少维护人员困扰和维护成本。
进一步地,请参阅图3,本申请还提供一种电子设备,所述电子设备400包括:
一个或多个处理器41以及存储器42。其中,图3中以一个处理器41为例。
处理器41和存储器42可以通过总线或者其他方式连接,图3中以通过总线连接为例。
存储器42作为一种非易失性计算机可读存储介质,可用于存储非易失性软件程序、非易失性计算机可执行程序以及模块单元,如本申请上述实施例中的一种基于机顶盒项目的SVN服务器管理方法对应的程序指令以及一种基于机顶盒项目的SVN服务器管理系统(例如,代码划分单元100、项目文件夹创建单元200、项目代码下载单元300等)。处理器41通过运行存储在存储器42中的非易失性软件程序、指令以及模块单元,从而执行一种基于机顶盒项目的SVN服务器管理方法的各种功能 应用以及数据处理,即实现上述方法实施例中的一种基于机顶盒项目的SVN服务器管理方法以及上述装置实施例的各个模块单元的功能。
存储器42可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储根据一种基于机顶盒项目的SVN服务器管理系统的使用所创建的数据等。
此外,存储器42可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实施例中,存储器42可选包括相对于处理器41远程设置的存储器,这些远程存储器可以通过网络连接至处理器41。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
所述程序指令以及一个或多个模块存储在所述存储器42中,当被所述一个或者多个处理器41执行时,执行上述任意方法实施例中的一种基于机顶盒项目的SVN服务器管理方法的各个步骤,或者,实现上述任意装置实施例中的一种基于机顶盒项目的SVN服务器管理系统的各个模块单元的功能。
上述产品可执行本申请上述实施例所提供的方法,具备执行方法相应的功能模块和有益效果。未在本实施例中详尽描述的技术细节,可参见本申请上述实施例所提供的方法。
本申请实施例还提供了一种非易失性计算机可读存储介质,所述计算机可读存储介质存储有计算机可执行指令,该计算机可执行指令被一个或多个处理器执行,例如图3中的一个处理器41,可使得计算机执行上述任意方法实施例中的一种基于机顶盒项目的SVN服务器管理方法的各个步骤,或者,实现上述任意装置实施例中的一种基于机顶盒项目的SVN服务器管理系统的各个模块单元的功能。
本申请实施例还提供了一种计算机程序产品,所述计算机程序产品包括存储在非易失性计算机可读存储介质上的计算机程序,所述计算机 程序包括程序指令,当所述程序指令被一个或多个处理器执行,例如图3中的一个处理器41,可使得计算机执行上述任意方法实施例中的一种基于机顶盒项目的SVN服务器管理方法的各个步骤,或者,实现上述任意装置实施例中的一种基于机顶盒项目的SVN服务器管理系统的各个模块单元的功能。
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的模块单元可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
通过以上的实施例的描述,本领域普通技术人员可以清楚地了解到各实施例可借助软件加通用硬件平台的方式来实现,当然也可以通过硬件。本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程是可以通过计算机程序指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施方法的流程。其中,所述存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random Access Memory,RAM)等。
以上仅为本申请的较佳实施例而已,并不用以限制本申请,凡在本申请的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本申请的保护范围之内。

Claims (9)

  1. 一种基于机顶盒项目的SVN服务器管理方法,其特征在于,包括如下步骤:
    S10:对SVN服务器上的代码进行划分,划分为共用化代码和特用化代码,将共用化代码在SVN服务器上只存储一份并存储在预先创建的共用文件夹中;
    S20:对于机顶盒的每个项目,在SVN服务器上均建立一个项目文件夹,项目文件夹用来存储每个项目的特用化代码;
    S30:在需要对项目进行编译时,由SVN服务器共用文件夹中下载共用化代码并通过软链接的方式链接共用化代码,由项目文件夹中下载特用化代码。
  2. 根据权利要求1所述的基于机顶盒项目的SVN服务器管理方法,其特征在于,所述步骤S10具体为:对机顶盒项目的bll、server、board、hal、osal、vendor六层代码进行划分,将hal、osal、vendor这三层代码划分为共用化代码,并将这三层接口采用统一封装后放入共用文件夹中。
  3. 根据权利要求2所述的基于机顶盒项目的SVN服务器管理方法,其特征在于,所述步骤S20具体为:将bll、server、board这三层代码划分为特用化代码,并存储在项目文件夹中。
  4. 根据权利要求3所述的基于机顶盒项目的SVN服务器管理方法,其特征在于,所述步骤S30具体为:将项目的hal、osal、vendor层通过软链接的方式,分别链接至共用化代码中的hal、osal、vendor层。
  5. 一种基于机顶盒项目的SVN服务器管理系统,其特征在于,包括:
    代码划分单元,对SVN服务器上的代码进行划分,划分为共用化代码和特用化代码,将共用化代码在SVN服务器上只存储一份并存储在预 先创建的共用文件夹中;
    项目文件夹创建单元,对于机顶盒的每个项目,在SVN服务器上均建立一个项目文件夹,项目文件夹用来存储每个项目的特用化代码;
    项目代码下载单元,在需要对项目进行编译时,由SVN服务器共用文件夹中下载共用化代码并通过软链接的方式链接共用化代码,由项目文件夹中下载特用化代码。
  6. 根据权利要求5所述的基于机顶盒项目的SVN服务器管理系统,其特征在于,所述代码划分单元对机顶盒项目的bll、server、board、hal、osal、vendor六层代码进行划分,将hal、osal、vendor这三层代码划分为共用化代码,并将这三层接口采用统一封装后放入共用文件夹中。
  7. 根据权利要求6所述的基于机顶盒项目的SVN服务器管理系统,其特征在于,所述代码划分单元将bll、server、board这三层代码划分为特用化代码,并存储在项目文件夹中。
  8. 根据权利要求7所述的基于机顶盒项目的SVN服务器管理系统,其特征在于,所述项目代码下载单元将项目的hal、osal、vendor层通过软链接的方式,分别链接至共用化代码中的hal、osal、vendor层。
  9. 一种电子设备,其特征在于,包括:
    至少一个处理器;以及
    与所述至少一个处理器通信连接的存储器;其中,
    所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1-4任意一项所述的方法。
PCT/CN2018/097802 2017-09-27 2018-07-31 基于机顶盒项目的svn服务器管理方法及系统 WO2019062316A1 (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201710892599.8A CN107707646A (zh) 2017-09-27 2017-09-27 基于机顶盒项目的svn服务器管理方法及系统
CN201710892599.8 2017-09-27

Publications (1)

Publication Number Publication Date
WO2019062316A1 true WO2019062316A1 (zh) 2019-04-04

Family

ID=61175188

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2018/097802 WO2019062316A1 (zh) 2017-09-27 2018-07-31 基于机顶盒项目的svn服务器管理方法及系统

Country Status (2)

Country Link
CN (1) CN107707646A (zh)
WO (1) WO2019062316A1 (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107707646A (zh) * 2017-09-27 2018-02-16 深圳市九洲电器有限公司 基于机顶盒项目的svn服务器管理方法及系统

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070244906A1 (en) * 2006-04-14 2007-10-18 Aptana Incorporated Collaborative Content Generation System And Method
CN104572237A (zh) * 2015-01-19 2015-04-29 上海动联信息技术股份有限公司 一种UKey安装包自动快速生成系统及其方法
CN105095089A (zh) * 2015-09-14 2015-11-25 北京金山安全软件有限公司 一种测试应用软件性能的方法及装置
CN107707646A (zh) * 2017-09-27 2018-02-16 深圳市九洲电器有限公司 基于机顶盒项目的svn服务器管理方法及系统

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101042645A (zh) * 2007-01-17 2007-09-26 北京立通无限科技有限公司 统一软件开发环境的方法、设备及系统
CN101453511B (zh) * 2007-12-07 2012-08-01 北京闻言科技有限公司 一种手机平台ui界面自适应的方法
CN106445541B (zh) * 2016-09-30 2020-02-28 华胜信泰信息产业发展有限公司 软件构建方法、软件构建装置和软件构建系统

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070244906A1 (en) * 2006-04-14 2007-10-18 Aptana Incorporated Collaborative Content Generation System And Method
CN104572237A (zh) * 2015-01-19 2015-04-29 上海动联信息技术股份有限公司 一种UKey安装包自动快速生成系统及其方法
CN105095089A (zh) * 2015-09-14 2015-11-25 北京金山安全软件有限公司 一种测试应用软件性能的方法及装置
CN107707646A (zh) * 2017-09-27 2018-02-16 深圳市九洲电器有限公司 基于机顶盒项目的svn服务器管理方法及系统

Also Published As

Publication number Publication date
CN107707646A (zh) 2018-02-16

Similar Documents

Publication Publication Date Title
US10474438B2 (en) Intelligent cloud engineering platform
US10740093B2 (en) Advanced packaging techniques for improving work flows
TWI713846B (zh) 領域模組運算單元,含有一企業之一模型之系統,單板運算單元,運算單元之網格,提供傳播可追溯性之方法,及非暫時性電腦程式產品
CN111324571B (zh) 一种容器集群管理方法、装置及系统
US11327744B2 (en) Equivalency of revisions on modern version control systems
US20190065552A1 (en) Deployment of javascript and typescript stored procedures and user-defined functions into database management systems
US11137732B2 (en) Flow engine for building automated flows within a cloud based developmental platform
CA2912857C (en) Apparatus and method for managing software translation
US10558442B2 (en) Integrating and sharing software build component targets
CN113127150A (zh) 云原生系统的快速部署方法、装置、电子设备和存储介质
US10824642B2 (en) Data synchronization architecture
WO2019062316A1 (zh) 基于机顶盒项目的svn服务器管理方法及系统
CN105573763A (zh) 一种支持rtos的嵌入式系统建模方法
KR102438812B1 (ko) 지식 베이스 관리 방법, 장치, 기기 및 매체
US11886551B2 (en) Systems and methods for asset management
CN113741931B (zh) 软件升级方法、装置、电子设备及可读存储介质
Arndt et al. Knowledge base shipping to the linked open data cloud
CN104516735A (zh) 实现云计算环境自动化运维的二维分层方法
CN103347059A (zh) 实现用户配置参数传递的方法、客户端和系统
US10255394B1 (en) Reduced overhead for massive parallel processing
CN112463253B (zh) 一种平台配置方法、系统、设备及存储介质
Baur Packaging of kubernetes applications
CN109002343A (zh) 一种实现虚拟机批量创建的方法及装置
US20130019245A1 (en) Specifying on the fly sequential assembly in soa environments
CN116762067A (zh) 网络节点中的近数据处理(ndp)

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 18860765

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

32PN Ep: public notification in the ep bulletin as address of the adressee cannot be established

Free format text: NOTING OF LOSS OF RIGHTS PURSUANT TO RULE 112(1) EPC (EPO FORM 1205 DATED 10/09/2020)

122 Ep: pct application non-entry in european phase

Ref document number: 18860765

Country of ref document: EP

Kind code of ref document: A1