Pregunta

Soy un novato de ClearCase y hasta ahora he estado acostumbrado a SVN. Por lo tanto, estoy un poco confundido sobre los pasos que debo seguir para crear una nueva estructura de directorios que contenga múltiples archivos para ClearCase.

Por ejemplo, digamos que hay una estructura de directorios existente dentro de ClearCase de la siguiente manera:

\ParentDirectory
    \ChildDirectory1
        \File1
        \File2
    \ChildDirectory2
    \ChildDirectory3
        \File1
    \ChildDirectory4

Si deseo agregar un nuevo subdirectorio a esta estructura, ChildDirectory5, que contendrá una cantidad de otros archivos, ¿cómo lo hago? Por lo que he estado leyendo, primero tendré que revisar el directorio principal y luego usar el comando mkelem para crear cada subdirectorio y archivo.

Sin embargo, ya he creado los archivos y directorios necesarios en mi máquina local, así que solo necesito registrarlos en ClearCase de alguna manera. Con SVN, todo lo que necesitaba hacer era copiar la carpeta principal en un repositorio retirado y hacer un complemento & amp; cometer secuencia de comandos en él.

¿Fue útil?

Solución

Como se explica en ¿Cómo puedo usar ClearCase para "agregar al control de fuente ..." recursivamente? , tiene que usar clearfsimport, que hace lo que estás diciendo (revisa los directorios principales, mkelem para los elementos)

clearfsimport -preview -rec -nset c:\sourceDir\ChildDirectory5 m:\MyView\MyVob\ParentDirectory

Tenga en cuenta el:

  • -preview option: permitirá verificar lo que sucedería sin hacer nada.
  • '*' usado solo en el entorno de Windows, para importar el contenido de un directorio
  • opción -nset (consulte mi respuesta anterior sobre nset).

Recomendaría vista dinámica para aquellas fases de inicialización en las que necesita importar una gran cantidad de datos: puede ver rápidamente cómo se ve su vista sin realizar ninguna actualización (como " sin actualizar su área de trabajo " ;):
ClearCase permite acceder a los datos de dos maneras:

  • vista de instantánea (como un espacio de trabajo SVN, excepto que todos los .svn en realidad se externalizan en un almacenamiento de vista fuera del área de trabajo)
  • vista dinámica: todos sus archivos son visibles a través de la red (acceso / actualización instantánea)

Otros consejos

Uso una variante de este script (lo llamo " ctadd "):

#!/usr/bin/perl

use strict;
use Getopt::Attrribute;

(our $nodo : Getopt(nodo));
(our $exclude_pat : Getopt(exclude_pat=s));

for my $i (@ARGV) {
  if ($i =~ /\s/) {
    warn "skipping file with spaces ($i)\n";
    next;
  }
  chomp(my @files = `find $i -type f`);
  @files = grep !/~$/, @files;  # emacs backup files
  @files = grep !/^\#/, @files; # emacs autosave files
  if (defined($exclude_pat)) {
    @files = grep !/$exclude_pat/, @files;
  }
  foreach (@files) {
    warn "skipping files with spaces (

Uso una variante de este script (lo llamo " ctadd "):

<*>

La opción -mkpath de cleartool mkelem creará y / o revisará automáticamente los directorios necesarios.

Para esta secuencia de comandos, -nodo simplemente emitirá los comandos, y -exclude le permitirá especificar un patrón para el cual se excluirá cualquier archivo que coincida.

Tenga en cuenta que Getopt :: Attribute no forma parte de la distribución estándar de Perl, pero está disponible en un espejo CPAN cerca de usted.

)\n" if /\s/ ; } @files = grep !/\s/, @files; foreach (@files) { my $cmd = "cleartool mkelem -nc -mkp \"

Uso una variante de este script (lo llamo " ctadd "):

<*>

La opción -mkpath de cleartool mkelem creará y / o revisará automáticamente los directorios necesarios.

Para esta secuencia de comandos, -nodo simplemente emitirá los comandos, y -exclude le permitirá especificar un patrón para el cual se excluirá cualquier archivo que coincida.

Tenga en cuenta que Getopt :: Attribute no forma parte de la distribución estándar de Perl, pero está disponible en un espejo CPAN cerca de usted.

\""; print STDERR "$cmd\n"; system($cmd) unless $nodo; } }

La opción -mkpath de cleartool mkelem creará y / o revisará automáticamente los directorios necesarios.

Para esta secuencia de comandos, -nodo simplemente emitirá los comandos, y -exclude le permitirá especificar un patrón para el cual se excluirá cualquier archivo que coincida.

Tenga en cuenta que Getopt :: Attribute no forma parte de la distribución estándar de Perl, pero está disponible en un espejo CPAN cerca de usted.

Tienes que importar la estructura de tu directorio local. El comando es clearfsimport .

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top