我需要使用一个软件包的最新源代码,而最新的源代码还没有发布,我应该在pubspec.yaml中写什么来获得Github中的软件包?下面的代码不起作用。它不下载软件包,我不能将其导入到我的源代码中
pubspec.yaml
dependencies: flutter: sdk: flutter carousel_pro: git: url: https://github.com/jlouage/flutter-carousel-pro.git
gg0vcinb1#
与特定分支的依赖关系:
dependencies: flutter: sdk: flutter carousel_pro: git: url: https://github.com/jlouage/flutter-carousel-pro.git ref: main # branch name
与特定提交的依赖关系:
dependencies: flutter: sdk: flutter carousel_pro: git: url: https://github.com/jlouage/flutter-carousel-pro.git ref: ea12e41 # commit hash
import 'package:carousel_pro/src/carousel_pro_widgets.dart'; import 'package:flutter/material.dart'; class NewsCarousel extends StatelessWidget { @override Widget build(BuildContext context) { return SizedBox( height: 200.0, child: WidgetCarousel( autoplay: false, pages: [], ), ); } }
6yt4nkrj2#
以上答案是正确的,但我补充了一些例子。因此,要使用pub/package/lib而不在www.example.com上发布pub.dev:
1.本地-保存在某个本地文件夹中
dependencies: library_name: path: /path/to/library_name
2.托管-在Github、Gitlab等平台上推送
dependencies: library_name: git: https://github.com/username/library_name
或以确切的分支为目标
dependencies: library_name: git: url: https://github.com/username/library_name.git ref: dev #branch name
或以精确提交为目标
dependencies: library_name: git: url: https://github.com/username/library_name.git ref: e234072340 #commit reference id
其中“library_name”必须与该发布的pubspec.yaml中声明的“name”相同。
g6ll5ycj3#
我将展示这个用例,在这个用例中,您希望访问除main/master之外的分支中的特定文件夹:
amplify_flutter: git: url: git://github.com/aws-amplify/amplify-flutter.git ref: null-safety-master path: packages/amplify_flutter/
d5vmydt94#
上面的方法对我不起作用,但是把网址改成https就起作用了:
dependencies: flutter: sdk: flutter flutter_tflite: git: url: https://github.com/qookit/flutter_tflite.git ref: main
“main”是我感兴趣使用的分支的名称。我第一次运行flutter pub get的时候,它也打开了一个浏览器窗口来询问我的git凭据。
vc6uscn95#
以下是一个示例
audio_service: git: url: https://github.com/kaushikgodhani/audio_service.git ref: minor #branch name path: audio_service #Folder Path on Github
fykwrbwg6#
如果软件包不是整个存储库,则可以使用path
geocoding: git: url: https://github.com/abdullahalamodi/flutter-geocoding.git path: geocoding #refers to flutter-geocoding/geocoding
kognpnkq7#
此外,如果需要,还可以使用tag:
private_view: git: url: git@github.com:xxx/private_view.git ref: 0.0.2 # tag
7条答案
按热度按时间gg0vcinb1#
pubspec.yaml
示例与特定分支的依赖关系:
与特定提交的依赖关系:
导入软件包的文件示例:
6yt4nkrj2#
以上答案是正确的,但我补充了一些例子。
因此,要使用pub/package/lib而不在www.example.com上发布pub.dev:
1.本地-保存在某个本地文件夹中
2.托管-在Github、Gitlab等平台上推送
或以确切的分支为目标
或以精确提交为目标
其中“library_name”必须与该发布的pubspec.yaml中声明的“name”相同。
g6ll5ycj3#
我将展示这个用例,在这个用例中,您希望访问除main/master之外的分支中的特定文件夹:
d5vmydt94#
上面的方法对我不起作用,但是把网址改成https就起作用了:
“main”是我感兴趣使用的分支的名称。
我第一次运行flutter pub get的时候,它也打开了一个浏览器窗口来询问我的git凭据。
vc6uscn95#
以下是一个示例
fykwrbwg6#
如果软件包不是整个存储库,则可以使用path
kognpnkq7#
此外,如果需要,还可以使用tag: