Een afhankelijkheid installeren met Bower vanaf URL en versie specificeren

Ik probeer een afhankelijkheid met Bower te installeren met behulp van een URL. Vanaf Bower-documentatie:

Bower biedt verschillende manieren om pakketten te installeren:

   # Using the dependencies listed in the current directory's bower.json 
    bower install
    # Using a local or remote package 
    bower install <package>
    # Using a specific version of a package 
    bower install <package>#<version>
    # Using a different name and a specific version of a package 
    bower install <name>=<package>#<version> 

Waar <package>een van de volgende kan zijn:

  • Een naam die verwijst naar een pakket dat bij Bower is geregistreerd, bijvoorbeeld jQuery.
  • Een extern Git-eindpunt, bijv. git://github.com/someone/some-package.git.
    Kan openbaar of privé zijn.
  • Een lokaal eindpunt, d.w.z. een map die een Git-repository is.
  • Een verkort eindpunt, bijv. someone/some-package
    (standaard ingesteld op GitHub).
  • Een URL naar een bestand, inclusief zip- en tar-bestanden.
    De inhoud wordt geëxtraheerd.

Maar dan staat er dat alle typen behalve de URL toestaan ​​om een ​​versie op te geven.

Hoe geef ik een versie op voor een gedownloade URL-afhankelijkheid?


Antwoord 1, autoriteit 100%

Gebruik een git-eindpunt in plaats van een pakketnaam:

bower install https://github.com/jquery/jquery.git#2.0.3

Antwoord 2, autoriteit 28%

Als u het bestand bower.json gebruikt om uw afhankelijkheden op te geven:

{
     "dependencies": {
         ...
         "photo-swipe": "[email protected]:dimsemenov/PhotoSwipe.git#v3.0.x",
#bower 1.4 (tested with that version) can read repositorios with uri format
         "photo-swipe": "git://github.com/dimsemenov/PhotoSwipe.git#v3.0.x",
     }
}

Onthoud dat Bower ook zoekt naar vrijgegeven versies en tags, zodat u naar bijna alles kunt verwijzen en basisquerypatronen kunt interpreteren zoals in het vorige voorbeeld. die de laatste kleine update van versie 3.0 zal ophalen (getest vanaf bower 1.3.5)

Update, aangezien de vraagbeschrijving ook vermeldt dat alleen een URL wordt gebruikt en geen github-repository wordt genoemd.

Een ander voorbeeld is om dit commando uit te voeren met de gewenste url, zoals:

bower install gmap3MarkerWithLabel=http://google-maps-utility-library-v3.googlecode.com/svn/tags/markerwithlabel/1.0/src/markerwithlabel.js -S

die opdracht downloadt uw js-bibliotheek, plaatst {uw bestemmingspad}/gmap3MarkerWithLabel/index.js en maakt automatisch een vermelding in uw bower.json-bestand met de naam gmap3MarkerWithLabel: “…” Daarna kunt u alleen bower update gmap3MarkerWithLabelindien nodig.

Grappig als je het proces backwars doet (handmatig het item in bower.json toevoegen, en dan prieel entryName installeren), het werkt niet, je krijgt een

bower ENOTFOUND-pakket
gmapV3MarkerWithLabel niet gevonden


Antwoord 3, autoriteit 11%

Een specifieke commit targeten

Afstandsbediening (github)

Als je github gebruikt, houd er dan rekening mee dat je je ook op een specifieke commit kunt richten (bijvoorbeeld van een fork die je hebt gemaakt en bijgewerkt) door zijn commit-hash toe te voegen aan het einde van zijn kloon-url. Bijvoorbeeld:

"dependencies": {
  "example": "https://github.com/owner_name/repo_name.git#9203e6166b343d7d8b3bb638775b41fe5de3524c"
}

Lokaal (bestandssysteem)

Of je kunt een git-commit in je lokale bestandssysteem targeten als je de .git-directory van je project gebruikt, zoals (in Windows; let op de slashes):

"dependencies": {
  "example": "file://C:/Projects/my-project/.git#9203e6166b343d7d8b3bb638775b41fe5de3524c"
}

Dit is een manier om bibliotheekcode te testen die u lokaal heeft vastgelegd maar nog niet naar de repo heeft gepusht.


Antwoord 4, autoriteit 11%

Gebruik het volgende:

bower install --save git://github.com/USER/REPOS_NAME.git

Meer hier:
http://bower.io/#getting-started

Other episodes