Develop a system to store change logs , Computer Engineering

Assignment Help:

The ?rst task in the project is to develop a sane system to store change logs and versions of ?les. The simplest approach is to create a "dot" directory in the location of the ?le to be versioned. For instance, create a directory called .uevcs whenever the add command is called and no ?les are currently versioned in the current working directory. In other words, check for the existence of .uevcs when the add command is called, and create the version infrastructure if it does not. When you call add, the script should prompt for a ChangeLog entry. A typical ChangeLog entry might look something like:

2001-01-15 23:02:01 J Shane Culpepper

reviewed by: Michael Engber

* src/nautilus-application.c: (nautilus_application_startup):
* src/nautilus-application.h:
* src/nautilus-first-time-druid.c: (druid_finished):
* src/nautilus-main.c: (main):

Fix for bug #1555. There is already an error dialog but there was an infinite loop problem hiding it. If the first time druid failed to create. nautilus, etc it would just run over and over again.

The exact format is up to you but should include date, time stamp, and version information. After the ?le has been added to the repository, implement the show command, to list the change history for the ?le. At this point, you should make some design decisions. Are there any other commands or options your program should support that are not in the required set? How do popular version control systems such as rcs, subversion or git work? Should I include an interactive menu system in the script in addition to the command line shortcuts? Remember, you will be doing a demo of your system and a code walk through in the labs Week 10-12. Your system should support multiple ?les at once and standard metacharacter expansion on the command line. For example, the command uevcs -r add *.c should recursively add all ?les with the extension .c.

Once you can add a ?le to the repository, you should now add the inverse command get. The get command should pull the ?le from the repository and create a copy in the current working directory. If the ?le already exists, then you should prompt the user if they wish to overwrite the current version.


Related Discussions:- Develop a system to store change logs

Describe the structure and function of a computer system, Question: a) ...

Question: a) Describe the structure and function of a computer system. b) The raw speed of a microprocessor will not achieve its potential unless a constant stream of wor

Write a menu driven program to perform addition, Q. Write a menu driven pr...

Q. Write a menu driven program to perform addition and subtraction in base 5. Check that entered numbers are in base 5 or not else error message should be displayed.

What is a serial port, What is a serial port?  A serial port transfers...

What is a serial port?  A serial port transfers and receives data single bit at a time.

Why a linked list is called a dynamic data structure, Why a linked list is ...

Why a linked list is called a dynamic data structure? What are the advantages of using linked list over arrays?    A linked list is known as a dynamic data structure because it

Why wap gateways are used, Why WAP gateways are used? The Wireless Appl...

Why WAP gateways are used? The Wireless Application Protocol Gateway is a very unique product giving semi -automatic redirection of HTML documents to WAP compatible mobile phon

Explain the instruction decode, Q. Explain the Instruction Decode? Ins...

Q. Explain the Instruction Decode? Instruction Decode: This phase is performed under control of Control Unit of computer. The Control Unit determines the operation which is t

Illustrate the encryption and decryption methods, Illustrate the Encryption...

Illustrate the Encryption and Decryption methods One of the best method of ensuring security is to change the form of communication. Let the messages be encoded in such a patte

Pre-os and runtime sub-os functionality, In a raw Itanium, a 'Processor Abs...

In a raw Itanium, a 'Processor Abstraction Layer' (PAL) is incorporated in system. When it's booted PAL is loaded in the CPU and provides a low-level interface which abstracts a nu

Define google calendar, Define Google calendar Google Calendar is free,...

Define Google calendar Google Calendar is free, full featured, and easy to use. It lets the user create both personal and shared calendars, which makes it ideal for tracking bu

What is focussed ion beam fix, What is Focussed Ion Beam Fix? A FIB Fix...

What is Focussed Ion Beam Fix? A FIB Fix (Focussed Ion Beam) Fix is simply performed onto a terminated chip. FIB is a somewhat exotic process where a particle beam is capable t

Write Your Message!

Captcha
Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd