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

Economic argument for good design, One way of demonstrating the importance ...

One way of demonstrating the importance of good ID is by showing tangible benefits that can be talked about in cash terms. Within a business, good ID can lead to benefits such as h

How will you reuse a plan, How will you reuse a plan? Reuse is an benef...

How will you reuse a plan? Reuse is an benefit of OO technology. Two aspects of reuse: Using existing things and making reusable new things It is simpler to reus

What are two reasons for using layered protocol, What are two reasons for u...

What are two reasons for using layered protocol? Layered protocol implies protocols used into each layer are the layer's own business that is they don't influence protocol of a

Explain the structure of virtual enterprise, Explain the Structure of Virtu...

Explain the Structure of Virtual Enterprise. The effective enterprise can be a suitable structure to explore the emerging opportunities for creating value within the informatio

What is inheritance, What is Inheritance? Inheritance is the method of ...

What is Inheritance? Inheritance is the method of deriving a feature of super class into sub class. Every sub class inherits the attributes, operations and association of its s

Factor causing parallel overheads, Performance metrics aren't able to attai...

Performance metrics aren't able to attain a linear curve in comparison to increase in number of processors in parallel computer. The main reason for above situation is presence of

What are the categories of radio communication, What are the categories of ...

What are the categories of Radio communication 1.  Sky wave or ionosphere communication 2.  Line-of-sight (LOS) microwave communication limited by horizon 3.  Troposphere

How does tcp/ip decide the size of an ip fragment, How does TCP/IP decide t...

How does TCP/IP decide the size of an IP fragment? Explain. TCP/IP protocol utilizes the name IP datagram to refer to an Internet packet. The amount of data carried into a data

What is the dissimilarity between dynamic strain aging, Q. What is the diss...

Q. What is the dissimilarity between dynamic strain aging and strain aging? Answer:- Strain aging could be explains as "normal wear and tear" or the fatigue that is experi

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