Tuesday, 18 September 2012

About SVN

Version Control Basics
A version control system (or revision control system) is a system that tracks incremental versions (or revisions) of files and, in some cases, directories over time. Of course, merely tracking the various versions of a user's (or group of users') files and directories isn't very interesting in itself. What makes a version control system useful is the fact that it allows you to explore the changes which resulted in each of those versions and facilitates the arbitrary recall of the same.

The Repository
At the core of the version control system is a repository, which is the central store of that system's data. The repository usually stores information in the form of a file system tree—a hierarchy of files and directories. Any number of clients connect to the repository, and then read or write to these files. By writing data, a client makes the information available to others; by reading data.


The Working Copy
A version control system's value comes from the fact that it tracks versions of files and directories, but the rest of the software universe doesn't operate on “versions of files and directories”. Most software programs understand how to operate only on a single version of a specific type of file. So how does a version control user interact with an abstract—and, often, remote—repository full of multiple versions of various files in a concrete fashion? How does his or her word processing software, presentation software,source code editor, web design software, or some other program—all of which trade in the currency of simple data files—get access to such files? The answer is found in the version control construct known as a working copy.A working copy is, quite literally, a local copy of a particular version of a user's VCS-managed data upon which that user is free to work. Working copies 1 appear to other software just as any other local directory full of files, so those programs don't have to be “version-control-aware” in order to read from and write to that data. The task of managing the working copy and communicating changes made to its contents to and from the repository falls squarely to the version control system's client software.

The problem of file sharing
All version control systems have to solve the same fundamental problem: how will the system allow users to share information, but prevent them from accidentally stepping on each other's feet? It's all too easy for users to accidentally overwrite each other's changes in the repository. Consider the scenario shown in Figure Suppose we have two coworkers, Harry and Sally. They each decide to edit the same repository file at the same time. If Harry saves his changes to the repository first, it's possible that (a few moments later) Sally could accidentally overwrite them with her own new version of the file. While Harry's version of the file won't be lost forever (because the system remembers every change), any changes Harry made won't be present in Sally's newer version of the file, because she never saw Harry's changes to begin with. Harry's work is still effectively lost—or at least missing from the latest version of the file—and probably by accident. This is definitely a situation we want to avoid!


The lock-modify-unlock solution
Many version control systems use a lock-modify-unlock model to address the problem of many authors clobbering each other's
work. In this model, the repository allows only one person to change a file at a time. This exclusivity policy is managed using
locks. Harry must “lock” a file before he can begin making changes to it. If Harry has locked a file, Sally cannot also lock it, and therefore cannot make any changes to that file. All she can do is read the file and wait for Harry to finish his changes and release his lock. After Harry unlocks the file, Sally can take her turn by locking and editing the file. Figure 1.3, “The lock-modify-unlock solution” demonstrates this simple solution

The copy-modify-merge solution
Subversion, CVS, and many other version control systems use a copy-modify-merge model as an alternative to locking. In this
model, each user's client contacts the project repository and creates a personal working copy. Users then work simultaneously and Fundamental Concepts 4independently, modifying their private copies. Finally, the private copies are merged together into a new, final version. The version control system often assists with the merging, but ultimately, a human being is responsible for making it happen correctly.
Here's an example. Say that Harry and Sally each create working copies of the same project, copied from the repository. They work
concurrently and make changes to the same file A within their copies. Sally saves her changes to the repository first. When Harry attempts to save his changes later, the repository informs him that his file A is out of date. In other words, file A in the repository has somehow changed since he last copied it. So Harry asks his client to merge any new changes from the repository into his working copy of file A. Chances are that Sally's changes don't overlap with his own; once he has both sets of changes integrated, he saves his working copy back to the repository.

But what if Sally's changes do overlap with Harry's changes? What then? This situation is called a conflict, and it's usually not
much of a problem. When Harry asks his client to merge the latest repository changes into his working copy, his copy of file A is
somehow flagged as being in a state of conflict: he'll be able to see both sets of conflicting changes and manually choose between
them. Note that software can't automatically resolve conflicts; only humans are capable of understanding and making the necessary
intelligent choices. Once Harry has manually resolved the overlapping changes—perhaps after a discussion with Sally—he can
safely save the merged file back to the repository.



Revisions
Each time the repository accepts a commit, this creates a new state of the filesystem tree, called a revision. Each revision is assigned a unique natural number, one greater than the number assigned to the previous revision. The initial revision of a freshly created repository is numbered 0 and consists of nothing but an empty root directory.


Friday, 14 September 2012

WCS Questions Frequently Asked


Following are the set of few Recently asked interview Questions in different companies.
  1. Tell abt ur self?
  2. Tell about Member subsystem and related control commands and tables tables?
  3. Tell about Master Catalog and related tables?
  4. What is the controller command called when you add a item to cart?
  5. While adding item to a cart, how to stop the calculations done behind?
  6. For a particular user the product should n't be visible, what you will do at code level?
  7. Diff between product and item?
  8. Diff between bundle and package?
  9. About acp polices? and tables effected?
  10. How u create controller cmd?
  11. How u create view and jsp?
  12. If u have a need to create a controller cmd then wt is the process?
  13. Types Of members, not users?
  14. Diff User types? And where this user types are stored?
  1. What are the subsystems you have worked on?
  2. Do you have knowledge on order subsystem?
  3. Tell me the order flow?
  4. What are the tables will effect when we submit a order?
  5. If I order two products, tell me what and how are the tables Calculation methods and data base tables will effect and what is the flow(regarding calcode)?
  6. Tell me the tables which are you have worked on order subsystem?
  7. What are the steps you follow to create new data base table?
  8. What is the java code u have to write for retrieving and inserting the data from the database(regarding access beans,entity beans)?
  9. What is the difference between the controller command and task command and in which situation u will create?
  1. In which company u r working?
  2. Diff b/w B2B and B2C?
  3. Which subsystem u r familiar with (marketing & member subsystem)?
  4. How many subsystems are in there wcs?
  5. How you have created promotions(through commerce accelerator)? Explain me in detail?
  6. How many types of promotions are there in wcs?
  7. Functional architecture of wcs?
  8. What is Business logic facade?
  9. Stateless session bean?
  10. Can we call multiple controller commands, if then how?
  11. What is the task command and view command and how we call task command in controller command
  12. Tell me about acpolicies and related tables?
  13. Tell me about crystal reports?
  14. What is http and https?
  15. Payment methods in wcs?
  16. What is Dyna cache and elements used in it?
  17. Did u modified css files? Where and how?
  18. Tell me about site and store?
  1. Tell me about yourself?
  2. Explain about your projects?
  3. In which business modules you are familiar?
  4. Tables effected in order subsystem?
  5. About quantity of items/products?
  6. Explain Order flow?
  7. About customizing the jsp's?
  8. Attributes in cachespec.xml file- Dyna Cache?
  9. About dojo and its module?
  10. Explain is dojo api?
  11. About wcs dojo?
  12. What is ajax in dojo and different types of using ajax?
  13. About refresh area and web 2.0?
  14. About storefronts(like consumer direct, Madison)?
  15. What is extended sites?
  16. Tell me about oops?
  17. Give an example of polymorphism with an example?
  18. Difference between B2B and B2C?
  19. Are you familiar with Singleton design pattern(i told that i have done mvc only)?
  1. How many projects u have done in wcs7 and wcs6?
  2. Duration of the wcs  project(current project)?
  3. Diff between wcs6. and wcs7?
  4. Are you comfortable with order subsystems , catalog subsystem and member subsystem? Explain in detain?
  5. Do you have any idea on working environment web services? Explain?
  6. Whats your project module?
  7. Methods in controller command?
  8. How to create a new jsp file?
  9. Why we are using jstl environment set up in every jsp file at starting?
  10. Which promotion is applicable for particular order id(data base related)?
  11. Have you worked on management center and other tools?
  12. Can u use access bean in jsp file? if yes how and why? if no , why?
  13. How to use same task command for 9 diff stores , how can u use?
  14. Difference between include and import tags in jsp?
  15. I need particular shipping address zipcode using orderid(data base related)?
  16. In controller command what is the need of gerResource() method?
  17. What are the exceptions we have in wcs?
  18. Features of wcs?
  19. Where we registered promotions? how will u create promotions?
  20. Are you comfortable with unix and database issues?
  21. How can u call a jsp file?
  22. Diff between global forward and normal forward?
  23. If u have a text box for age. if user entered less than 20 we can display an error message using controller command . how will u do it?
  24. Explain acpload?
  25. How to make a registered user can use controller command and a guest user can't use same controller command using acpolicy before call controller commnad?
  26. How can u throw a user related exception?
  27. Is there any other type of exception?
  28. Diff types of users flow in entire wcs application?
  29. What is entity bean and session bean?
  30. Diff between stateless and statefull session bean?
  31. What is the use of session bean?
  32. What rate u will give for wcs out of 10 points?  
  33. what is  ur current project?
  34. How much u have wcs experience and java experience?
  35. Which version you are working?
  36. How can we display error messages?
  37. What is http and https ? where we are using https ?
  38. What is diff between normal dojo and wcs dojo?
  39. Where u r strong in wcs and java?
  1. Tell me about your self.
  2. Flow of scholastic(My Current Project).
  3. Order flow of scholastic(My Current Project).
  4. Tables,commands used in Order flow.
  5. Explain how a teacher recommands books for a parent in technical(My Current Project).
  6. How you differentiate teacher and parent( table name (My Current Project)).
  7. Explain Catalog subsystem, Order subsystem.
  8. Explain your projects technically.
  9. How to Customize of management center.
  10. Explain Order flow Customization.
  11. When you will create a task command or control command.
  12. Technically explain about dataload utility.
  13. Explain any issue that you have faced and how you solved it.
  14. If suppose i asked you to add two products into the store, from whom you will take help.
  15. About BOD and WEB-SERVICES.
  16. Pattern you follow to fix a issue.
  17. Procedure that your company follows to do a task.
  18. Tell me any thing that you have customized without repeating on infocenter and developer works.
  19. What type of exception is ejb finder exception?
  20. For a controller command we will have isGeneric method, i want to check the user type before calling this method using acploads how. And i want to restrict control command to generic users how?
  21. Can a controll command interface have two implementations classes. Then how we will register and which controll command implementation class calls.
  22. Can you tell me ur project in technical way?
  23. How to create Admin user using organisation console?
  24. Suppose one user is logged into our site. He selected some of items and he has given the order. After two months, how you can check the status of the order?
  25. What is ur production system?
  26. What is .sar file contains and tell me the usuage of this file?
  27. Why can't we use a Entity bean without a access bean?
  28. Can we call a multiple controll commands? How?
  29. How we can assiagn roles to a users?
  30. what are the tables will effect when order submit ?
  31. if i order two products, tell me what are the calculation methods and data base tables will effect and what is the flow?
  32. what are the steps you follow to create new data base table ?
  33. For a product how we can retrieve its description from the tables for different languages?