It's all about the answers!

Ask a question

Option to disable jazzignore changes from visual studio


Yaron Norani (47267065) | asked May 14 '15, 9:52 a.m.

Hi,

We are using a component that already contain jazzignore files created from Eclipse client.

The team is using RTC Visual studio client and creating a new solution.

When trying to add and share new solution, RTC evaluate all existing jazzignore files located at the component and generate list of resources to ignore.

Also, It changes the jazzignore files and declare that recursive ignore will be ignored. See the following.

** Is there a way to disable the option to ignore from visual studio?

All jazzignore changes will be done externally.

Thanks,

Yaron

# The property core.ignore specifies a list of file patterns that will be

# ignored in this directory.

#

# The value of core.ignore.recursive will be ignored.

2 answers



permanent link
Surya Tripathi (65017) | answered May 19 '15, 2:32 p.m.
edited May 19 '15, 2:33 p.m.
There isn't such an option like a preference if thats what you are looking for,  but you can remove patterns while sharing your project in VS and the jazzignore file will not be created (because there will be nothing to ignore)

However, I do wonder, why do you need to disable option to ignore in VS?  
When you add a Java project in Eclipse to RTC SCM, .jazzignore is not created by default because the default ignore rules are core.ignore.recursive={*.class} and core.ignore={bin} and they are good enough. It sounds like you manually created a jazzignore file and added to the component from Eclipse. And now, you want to add Visual Studio files to the same component from Visual Studio? If I were you, I would not add a java project and a Visual Studio project to the same component. I would rather create two components, one for projects in Eclipse and other for projects in Visual Studio.

The jazzignore file which gets created when you add a Visual Studio project to RTC SCM, is really something you want to have. If you choose not to create this file, you would not be able to leverage from the capability of RTC VS Client of automatically ignoring unnecessary files. Every user will then have to deal with pending changes view and ensure that they don't accidentally checkin these unnecessary files. 

BTW, what problems do you think you will run into if you let VS create/update the jazzignore file? VS projects are not going to have .class and 'bin' resources and Eclipse projects are not going to have VS files (.suo, .user, .ncb etc)



Comments
Yaron Norani commented May 20 '15, 3:32 p.m.

Hi Surya,

Thanks for the reply.

You are right. The best is to create two components. One for Visual Studio only.

But, The environment is also connected to Clearcase and there is sync that is done on daily basis.

It means that I can not separate them now.

I already  have a jazzignore files that contain all visual studio patterns.

I  want to restrict the users to change it from visual studio.

I have two options now:

1. While sharing new solution - to unselect all patterns. It takes lot of time and visual studio is freeze. (long list generated from the 30 ignore files).

2. to let visual studio change those files and at the end undo all jazzignore changes. I have about 30 ignore files in this component and this is going to be complicated to support it.

Can you find alternate solution?

Thanks,

Yaron


Surya Tripathi commented May 20 '15, 4:37 p.m.

 I guess handling this manually is the only option left. 

Once VS has modified the jazzignore file and changes are delivered, no more modifications will happen to the jazzignore  file. You mention that your jazzignore file already has ignore patterns needed for VS - not sure why VS is still modifying the file. I can only guess, VS still needs to put something in the jazzignore file. If you allow the modifications to happen from VS and deliver changes (after making sure that existing patterns are not deleted), you will have one correct jazzignore file and any subsequent share operation from from VS will not further modify the jazzignore file. 


Yaron Norani commented Aug 08 '15, 5:27 a.m.

  Hi Surya,


My jazzignore file was created from Eclipse and edited manually to adjust also for visual studio projects (exist in same component).
In general, I do not want to make any changes from VS.
The problem is that if a user add new SLN (solution) he alerts to add / change the jazzignore files.
1. I want to disable it.
2. While VS add ignore pattern it also change other lines. In general I can see that the jazzignore file structure in VS is different than in Eclipse.


permanent link
Yaron Norani (47267065) | answered Aug 12 '15, 4:38 a.m.

Hi Surya,

See below jazzignore example before and after sharing a visual studio solution.

You will find that there was deletion of some ignored patterns during the sln jazz share process.

Jazzignore - Before:

### Jazz Ignore 0
# Ignored files and folders will not be committed, but may be modified during
# accept or update. 
# - Ignore properties should contain a space separated list of filename patterns. 
# - Each pattern is case sensitive and surrounded by braces ('{' and '}'). 
# - "*" matches zero or more characters. 
# - "?" matches a single character. 
# - The pattern list may be split across lines by ending the line with a
#     backslash and starting the next line with a tab. 
# - Patterns in core.ignore prevent matching resources in the same
#     directory from being committed. 
# - Patterns in core.ignore.recursive matching resources in the current
#     directory and all subdirectories from being committed. 
# - The default value of core.ignore.recursive is *.class
# - The default value for core.ignore is bin
#
# To ignore shell scripts and hidden files in this subtree:
#     e.g: core.ignore.recursive = {*.sh} {\.*}
#
# To ignore resources named 'bin' in the current directory (but allow
#  them in any sub directorybelow):
#     e.g: core.ignore.recursive = {*.sh} {\.*}
#
# NOTE: modifying ignore files will not change the ignore status of
#     Eclipse derived resources.

core.ignore.recursive= {bin} {Release} {bin64} {*.mak2} {*.vcproj_mak} \
 {*.obj} {*.asm} {*.bsc} {*.htm} {*.LL_libs} {*.LL_test} \
 {*.log} {*.lst} {*.mak2} {*.makdep} {*.slice} {*.state} \
 {*.tlb} {*.vcproj_mak} {Thumbs.db} {*.dep} {*.exp} {*.h62} \
 {*.idb} {*.map} {*.ncb} {*.pch} {*.res} {*.resources} \
 {*.pdb} {*.lib} {*.opt} {*.manifest} {*.sbr} {*.s62} \
 {*.dll} {*.Dll} {*.exe} \
 {*.vcproj.*.user} \
 {LogHeaderInfo.h} {dlldata.c} {HostRunner_i.c} {HostRunner_p.c} {HostRunner.h} \
 {EIM_manager.cdb} {EIM_managercfg_c.c} {EIM_managercfg.cmd} {EIM_managercfg.h} {EIM_manager.out} \
 {Master.out} {Swiftcfg_c.c} {Swiftcfg.cmd} {Swiftcfg.h} \
 {*.rbf}
 
core.ignore=

Jazzignore - After:

### Jazz Ignore 0
# The property core.ignore specifies a list of file patterns that will be
# ignored in this directory.
#
# The value of core.ignore.recursive will be ignored.
#
# Ignore properties should contain a space separated list of filename patterns.
# Each pattern is case sensitive and surrounded by braces ('{' and '}').
# "*" matches zero or more characters, and "?" matches single characters.
#
#   e.g: {*.sh} {\.*}    ignores shell scripts and hidden files

# NOTE: modifying ignore files will not change the ignore status of derived
# resources.

core.ignore.recursive=  \
 {*.obj} \
 {*.log} \
 {*.tlb} \
 {*.idb} \
 {*.pdb} \
 {*.dll} \
 {*.vcproj.*.user} \
 {LogHeaderInfo.h} \
 {EIM_manager.cdb} \
 {Master.out} \
 {*.rbf}

core.ignore=

Your answer


Register or to post your answer.


Dashboards and work items are no longer publicly available, so some links may be invalid. We now provide similar information through other means. Learn more here.