Comments (4)
Oops, looks like I totally forgot about this, sorry!!!!
Thanks for explanation, I've finally found a way to use it as it should be used :)
from grumphp.
Not sure what you are trying to achieve here. Can you elaborate in more details?
You can run grumphp without .git
if you pass in the list of files you want to check through STDIN (as a list of files) or if you pass in a git diff.
How would you want to pass the files instead if you don't have a .git?
from grumphp.
mmhm sorry to hear read that.
Essentially, the initial request involves using Grumphp as a task runner when the .git
directory is not provided. In this scenario, it would execute the commands without requiring a .git
directory to be present.
Consider the phpcsfixer
task as an example. When the .git
directory is available, Grumphp will supply the phpcsfixer
task with a list of modified files.
However, when the .git
directory is not available, no specific files will be passed to the task. In this case, the phpcsfixer
task will continue to work, and will potentially scan the src
directory (or other designated directories in its default config), and thus behaving in a more generalized manner.
This flexibility allows for the continued use of the task runner even in environments where the .git
directory might be absent or inaccessible.
from grumphp.
As you know, everything is possible and up for discussion.
But to be fair: this is how the internal system was designed from day one and always has worked.
You are simply trying to achieve things for which this tool is not designed.
The big problem I can see here by not passing any files is:
If you don't pass any files, a lot of tasks will skip because there are e.g. no PHP files provided.
This is the logic that makes GrumPHP only run the tasks that are needed based on the git diff in a pre-commit.
A possible solution would be to read all the files of the project's directory.
However, you most likely don't want to include things like vendor
, node_modules
, application caches, ....
So that means you'll need ways to include or exclude folders, files, ...
That would probably be a lot of work - just to make it work outside of .git
context.
That is basically why it works the way it works nowadays: git already offers the project included / excluded files and the list of all known files.
I'm not sure if this feature could make it to grumphp's core and am most surely not going to create it myself at this moment :)
from grumphp.
Related Issues (20)
- Memory is not being released in parallel execution HOT 8
- Print the commit message when failing on `git_commit_message` HOT 4
- how can I use grum with docker-compose ? HOT 3
- Fails to Recognize PHPStan Baseline During Commit Workflow
- Override open_basedir only for grumphp test HOT 2
- Grumphp config using default PHPCS XML and other standard's sniff HOT 2
- Undefined constant PhpParser\ParserFactory::PREFER_PHP7 when using `nikic/php-parser` version 5. HOT 1
- Support multiple php versions for tasks HOT 2
- [Task] Add bin/console task for Symfony HOT 1
- husky/lint-staged compatibility HOT 5
- The application requires the version "^7.2" or greater. HOT 2
- Support for multiple PHPStan tasks HOT 2
- How do you think about a configuration to opt-in to continue the commit if fixer could fix everything automatically? HOT 2
- DistFileLoader doesn't import another file
- Add support for git_pre_push HOT 1
- git_blacklist never runs? HOT 5
- Composer validate task not running when composer.lock changes
- Env variables don't get expanded in task definitions HOT 1
- Git Blacklist example does not work HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from grumphp.