2013-07-12 11 views
5

Ho la seguente struttura di directory e voglio comprimere il contenuto della cartella dev e posizionarlo nella root dell'archivio generato senza che sia racchiuso all'interno di un livello superiore cartella:Comprimi contenuto nella root di archivio utilizzando grunt-contrib-compress

_build/ #build scripts 
dist/  #destination 
dev/  #source 

Ecco il codice (gruntfile.js all'interno _build):

compress: {    
     main : { 
      options : { 
       archive : "../dist/dev.zip" 
      }, 
      files : [ 
       { expand: true, src : "../dev/**/*" } 
      ] 
     }  
     } 

vorrei poter comprimere solo il contenuto della cartella dev e posizionarlo nella cartella dist. Ma quando provo a farlo, tutto il contenuto di Dev viene compresso all'interno di una cartella radice.

Actual zip generato:

dist/ 
    |____ dev.zip 
      |_____ dev/ 
        |_____ index.html 
        |_____ styles/style.css 

Ma io voglio il file zip per essere come questo:

dist/ 
    |____ dev.zip 
     |_____ index.html 
     |_____ styles/style.css 

Vedete? i file vengono racchiusi in una cartella (con lo stesso nome dello zip) anziché essere collocati nella radice del file zip.

Questo può essere ottenuto in qualche modo?

Grazie

+0

Hi Davi , Sto affrontando lo stesso problema, hai trovato una soluzione? –

risposta

11

si può fare come esposto qui: https://github.com/gruntjs/grunt-contrib-compress/issues/33

Ad esempio:

compress : { 
    main : { 
    options : { 
     archive : "myapp.zip" 
    }, 
    files : [ 
     { expand: true, src : "**/*", cwd : "dist/" } 
    ] 
    } 
} 

genererà myapp.zip nel percorso principale, countaining tutti i file e directory inclusa nella/dist, ma non la directory dist stessa.

6

un altro esempio, più in linea con la domanda originale:

compress: { 
    main: { 
     options: { 
      archive : "../dist/dev.zip" 
     }, 
     files: [ 
      { 
       expand: true, 
       cwd: '../dev/', 
       src: ['**'], 
      } 
     ] 
    }, 
}, 

Questo dovrebbe dare la tua struttura piatta:

dist/ 
    |____ dev.zip 
     |_____ index.html 
     |_____ styles/style.css 

checkout questo grande articolo su grugnito-compressa: http://www.charlestonsw.com/what-i-learned-about-grunt-compress/