
Research
Security News
Malicious PyPI Package Exploits Deezer API for Coordinated Music Piracy
Socket researchers uncovered a malicious PyPI package exploiting Deezer’s API to enable coordinated music piracy through API abuse and C2 server control.
staged-git-files
Advanced tools
The 'staged-git-files' npm package is used to retrieve information about staged files in a Git repository. It allows developers to programmatically access details about files that have been added to the staging area, which can be useful for pre-commit hooks, linting, and other automated workflows.
List Staged Files
This feature allows you to list all staged files in the repository. The 'ACM' argument stands for Added, Copied, and Modified files. The callback function receives an error object and a results array containing details about each staged file.
const sgf = require('staged-git-files');
sgf('ACM', (err, results) => {
if (err) throw err;
console.log(results);
});
Filter Staged Files by Status
This feature allows you to filter staged files by their status. In this example, 'A' stands for Added files. The callback function receives an error object and a results array containing details about each added file.
const sgf = require('staged-git-files');
sgf('A', (err, results) => {
if (err) throw err;
console.log(results);
});
Custom File Status Query
This feature allows you to create a custom query for staged files by specifying an array of status codes. In this example, it retrieves files that are either Added ('A') or Modified ('M'). The callback function receives an error object and a results array containing details about each file matching the query.
const sgf = require('staged-git-files');
sgf(['A', 'M'], (err, results) => {
if (err) throw err;
console.log(results);
});
The 'simple-git' package is a lightweight interface for running Git commands in any Node.js application. It provides a more comprehensive set of Git functionalities compared to 'staged-git-files', including committing, pushing, and pulling changes, as well as retrieving the status of the repository.
The 'isomorphic-git' package is a pure JavaScript implementation of Git that works in both Node.js and browser environments. It offers a wide range of Git functionalities, including cloning repositories, committing changes, and managing branches. It is more versatile than 'staged-git-files' but also more complex to use.
The 'nodegit' package is a native Node.js binding to the libgit2 library, providing a full suite of Git functionalities. It allows for more advanced Git operations, such as merging branches and handling submodules, making it more powerful but also more complex than 'staged-git-files'.
This module returns an array of staged files and their status acording to git.
npm install staged-git-files
var sgf = require("staged-git-files");
sgf(function(err, results){
//WHAT EVER YOU SO PLEASE
});
Example Results
[
{
"filename": "package.json",
"status": "Added"
},
{
"filename": "readme.md",
"status": "Modified"
},
{
"filename": "index.js",
"status": "Renamed"
}
]
$ sgf
Added package.json
Modified readme.md
Renamed index.js
Get a list of staged git files
Get head that will be used in the diff to ID which files are waiting to be staged.
This is a proxy for fs.readFile with one change. The filename will be relative to the sgf.cwd
Boolean that flips logging on and off. By default this is false. If true, all git commands will be console logged.
If true, include content will add a content
or err
param to the file object.
The current working directory. AKA: where the .git folder you care about is.
SGF-Status (git status code)
FAQs
get a list of staged git files and their status
The npm package staged-git-files receives a total of 223,875 weekly downloads. As such, staged-git-files popularity was classified as popular.
We found that staged-git-files demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Research
Security News
Socket researchers uncovered a malicious PyPI package exploiting Deezer’s API to enable coordinated music piracy through API abuse and C2 server control.
Research
The Socket Research Team discovered a malicious npm package, '@ton-wallet/create', stealing cryptocurrency wallet keys from developers and users in the TON ecosystem.
Security News
Newly introduced telemetry in devenv 1.4 sparked a backlash over privacy concerns, leading to the removal of its AI-powered feature after strong community pushback.