Giter Site home page Giter Site logo

pycvs's Introduction

pycvs

Build StatusPyPI - Python Version

A python client for CVS repositories.

Yeah, I know that CVS is a hundred years old, but sometimes you are stick to work with it. This utility is your best buddy to help you out! :)

Advantages

  • No password prompting
  • Beautiful output
  • Recursive addition

Dependencies

It runs only on Python 3 and depends on some libraries (available at PyPI):

  • pexpect>=4.1.0
  • colorama>=0.3.7

Installation

Install from PyPI:

pip3 install pycvs

Supported commands

This contains the current supported commands:

Checkout a brand new repository or update an existing one:

% pycvs checkout <repo>
Checking out repository repo

385 files checked out
70 directories checked out

% pycvs update <repo>

Get current status of a repository:

% cd my_repo
% pycvs status
On branch HEAD
Untracked files:
 (use cvs add <file>... to add them for commit)

  	bla

Changes staged for commit:
 (use cvs commit... to check them in)

	./my_script.py

Add new files to repository. It works recursively:

% cd my_repo
% pycvs add foo/
Directory foo added
	staging foo/bla to commit
	staging foo/ble to commit

Diff the modified files from the server:

% pycvs diff [parameters]
(open a less windows with the differences in the unified syntax and colors)

Log the file history from the server:

% pycvs log [parameters]
(open a less windown with file's revisions, tags...)

pycvs's People

Contributors

gerson23 avatar

Stargazers

 avatar  avatar

Watchers

 avatar  avatar  avatar

pycvs's Issues

Create remove option

Though less often used, it is a nice addition to have a pycvs rm <file> command that removes the file and removes from cvs in just one command.

Add commit option

Commit isn't supported by pycvs yet. This could be added as well, but need more though on how to handle the commit message and how to display the new revision numbers.

Error handling

A more robust error handling should be implemented for cases like:

  • Wrong configured CVS password
  • Conflict on files
  • Server timeout

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.