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

What do you mean by memory mapped i/o, What do you mean by memory mapped I/...

What do you mean by memory mapped I/O? In Memory mapped I/O, there is no particular input or output instructions. The CPU can manipulate I/O data residing in interface register

Crafting an isa - computer architecture, Crafting an ISA: We will l...

Crafting an ISA: We will look at some decisions facing an instruction set architect, and In the design of the MIPS instruction set how those decisions were made. MIPS

Stack and queue, Describe queue? Ans:  It is a type of data structure ...

Describe queue? Ans:  It is a type of data structure in which the data are stored in and retrieved on a First in first out (FIFO) basis. It grows in the direction of increasin

Explain mdr and mar, Explain MDR and MAR. The data and address lines of...

Explain MDR and MAR. The data and address lines of the external memory bus linked to the internal processor bus by the memory data register, MDR and the memory address register

Two ways for restricting the value range for a domain, What are the two way...

What are the two ways for restricting the value range for a domain? By specifying fixed values. By stipulating a value table.

What is dialog box, This is a small window that is demanding your attention...

This is a small window that is demanding your attention. You must respond before you can carry on using the program that shown the dialog box. A dialog box does not have a minimize

What is macro-expansion, What is macro-expansion? Macro calls lead to m...

What is macro-expansion? Macro calls lead to macro expansion. Throughout macro expansion, the macro call statement is replaced through a sequence of assembly statements.

Where traffic intensity can be measured, Traffic Intensity can be measured ...

Traffic Intensity can be measured in (A)  Erlangs                                    (B) CCS (C)  CM                                         (D) All of the above Ans:

Define the identifiers of c language, Define the Identifiers of c language?...

Define the Identifiers of c language? In C the names of the functions, variables and arrays and various other user - defined items are called identifiers. The first character o

Differentiate b/w pre-emptive and non-pre-emptive scheduling, Differentiate...

Differentiate between pre-emptive and non-pre-emptive scheduling. Pre-emptive scheduling : in its approach, center processing unit can be taken away from a process if there is a

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