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 is a resource-allocation graph, What is a resource-allocation graph? ...

What is a resource-allocation graph? Deadlocks can be described more precisely in terms of a directed graph known as a system resource allocation graph. This graph having of a

Fundamental building block of main memory, Q. Fundamental building block of...

Q. Fundamental building block of main memory? The fundamental building block of main memory remains DRAM chip as it has for decades. Till recently there had been no important c

What is dom, DOM is the Document Object Model (DOM) which is an interface s...

DOM is the Document Object Model (DOM) which is an interface specification handled by the W3C DOM Workgroup that explains an application independent mechanism to access, parse, or

Bresenham''s line drawing algorithm, what are advantages and disadvantages ...

what are advantages and disadvantages of bresenham''s line drawing algorithm?

Explain traffic handling capacity, Traffic Handling Capacity is given by ...

Traffic Handling Capacity is given by (A)  Switching capacity × Theoretical maximum load (B)  Switching capacity / Theoretical maximum load (C)  Theoretical maximu

Illustration of code conversion, Program: A good illustration of code conve...

Program: A good illustration of code conversion: Write a program to convert a; 4-digit BCD number into its binary equivalent. BCD number is stored as a; word in memory location kno

What is the ccitt standard bandwidth for speech, The CCITT standard bandwid...

The CCITT standard bandwidth for speech is: (A) 20000 Hz                                  (B) 15000 Hz (C) 7000 Hz                                    (D) 3400 Hz Ans:

Explain circuit switching versus packet switching, Explain difference of Ci...

Explain difference of Circuit switching versus Packet switching. Within circuit switching an end-to-end path is to be establishing before any data can be sent. Previously a con

Software Engineering, Software Engineering is a layered technology. Explain...

Software Engineering is a layered technology. Explain

Classifier with classes, Consider one versus the rest voting used for class...

Consider one versus the rest voting used for classifier with three classes {a, b, c}. Given a row of data denoted as x0 suppose that the classifier for a versus the rest predicts 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