Bower ve dev bağımlılıklar vs bağımlılıklar


159

'Açısal' çalıştırdım ve daha sonra 1.0.8 yüklediğini fark ettim, açısal bileşenleri kaldırdım, ancak tüm 1.2'yi yeniden eklediğimde orijinal bower.json dosyası 'devDependencies' altında açısal alaylar ve açısal senaryolara sahipti. 0-rc.2 bileşenleri devDependencies yerine bağımlılıklar altında açısal alay ve açısal senaryo.

DevDependencies nasıl kullanılır merak ediyorum ve ben elle sabitleme ya da olduğu gibi bırakmak rahatsız. Bower CLI'da bir şeyi nasıl dev bağımlılığı olarak işaretleyeceğinizi belirtmenin bir yolu var mı?

Düzenlemelerden sonra dosya:

{
    name: "Angular",
    version: "0.0.0",
    dependencies: {
        json3: "~3.2.4",
        jquery: "~1.9.1",
        bootstrap-sass: "~2.3.1",
        es5-shim: "~2.0.8",
        angular-mocks: "1.2.0-rc.2",
        angular-sanitize: "1.2.0-rc.2",
        angular-resource: "1.2.0-rc.2",
        angular-cookies: "1.2.0-rc.2",
        angular: "1.2.0-rc.2",
        angular-scenario: "1.2.0-rc.2"
    },
    devDependencies: { }
}

Düzenlemelerden Önce:

{
    "name": "Angular",
    "version": "0.0.0",
    "dependencies": {
        "angular": "~1.0.7",
        "json3": "~3.2.4",
        "jquery": "~1.9.1",
        "bootstrap-sass": "~2.3.1",
        "es5-shim": "~2.0.8",
        "angular-resource": "~1.0.7",
        "angular-cookies": "~1.0.7",
        "angular-sanitize": "~1.0.7"
    },
    "devDependencies": {
        "angular-mocks": "~1.0.7",
        "angular-scenario": "~1.0.7"
    }
}

Yanıtlar:


284

devDependencies birim testi, paketleme komut dosyaları, dokümantasyon oluşturma vb. gibi geliştirmeyle ilgili komut dosyaları içindir.

dependencies üretim kullanımı için gereklidir ve dev için de gereklidir.

Dahil devDependenciesiçinde dependencieso var gibi zararlı olmayacak; modül sadece kurulum sırasında daha fazla dosya (bayt) toplar - daha fazla (gereksiz) kaynak tüketir. Saf bir POV'dan, bu ekstra baytlar zararlı olabilir, sadece bakış açınıza bağlıdır.

Biraz ışık saçmak için bower help install, altında listelenen modüller devDependencies, modül kurulumu sırasında -pveya --productionörn.

bower install angular-latest --production

Bu, geliştirme platformu dışındaki herhangi bir şey için kurulum gerçekleştirmenin önerilen yoludur.

Aksine, altında listelenen modülleri atlamanın bir yolu yoktur dependencies.


Bower@1.2.7 itibariyle ( bower'ın en son kaynağına bakınız ), bower helpverim:

Usage:

    bower <command> [<args>] [<options>]

Commands:

    cache                   Manage bower cache
    help                    Display help information about Bower
    home                    Opens a package homepage into your favorite browser
    info                    Info of a particular package
    init                    Interactively create a bower.json file
    install                 Install a package locally
    link                    Symlink a package folder
    list                    List local packages
    lookup                  Look up a package URL by name
    prune                   Removes local extraneous packages
    register                Register a package
    search                  Search for a package by name
    update                  Update a local package
    uninstall               Remove a local package

Options:

    -f, --force             Makes various commands more forceful
    -j, --json              Output consumable JSON
    -l, --log-level         What level of logs to report
    -o, --offline           Do not hit the network
    -q, --quiet             Only output important information
    -s, --silent            Do not output anything, besides errors
    -V, --verbose           Makes output more verbose
    --allow-root            Allows running commands as root

See 'bower help <command>' for more information on a specific command.

ve ayrıca, bower help installverim ( son kaynağa bakınız ):

Usage:

    bower install [<options>]
    bower install <endpoint> [<endpoint> ..] [<options>]

Options:

    -F, --force-latest      Force latest version on conflict
    -h, --help              Show this help message
    -p, --production        Do not install project devDependencies
    -S, --save              Save installed packages into the project's bower.json dependencies
    -D, --save-dev          Save installed packages into the project's bower.json devDependencies

    Additionally all global options listed in 'bower help' are available

Description:

    Installs the project dependencies or a specific set of endpoints.
    Endpoints can have multiple forms:
    - <source>
    - <source>#<target>
    - <name>=<source>#<target>

    Where:
    - <source> is a package URL, physical location or registry name
    - <target> is a valid range, commit, branch, etc.
    - <name> is the name it should have locally.

bower.json'dan kaldırdığınızda gereksiz deps'leri otomatik olarak kaldırmak için bower almanın bir yolu var mı?
FutuToad

1
@FutuToad, ben denemedim ama bower update(eski deps kaldırıldı ile en son sürümü almak için) ardından bir bower prune(yabancı yerel paketleri siler) hile yapabilir.
zamnuts

1
@MichaelTrouw dizin yapısı temel olduğundan bu mümkün değildir. Geliştirme makinenizdeki (veya başka bir hazırlama ortamındaki) başka bir dizinde bir üretim yüklemesi yapmayı öneririm.
zamnuts


1
@Edgar üretim kodunuz sizin OLMAYINIZ devDependenciesve bu nedenle bootstrap kodunuzun, mantığınızın veya normal çalışırken uygulamanızın başka bir yönünün bir parçası olmamalıdır. Yalnızca geliştiriciyle ilgili görevleri (komut dosyaları, test paketleri oluşturma vb.) Çalıştırmayı denerseniz, modül bulunamaz. Daha fazla bilgiye ihtiyacınız varsa, lütfen SO ile ilgili yeni bir soru sorun. Son olarak, hemen hemen kullanımdan kaldırıldığı için çardaktan
uzaklaşmayı düşünün
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.