Heim > Artikel > Entwicklungswerkzeuge > Können Github-Aktionen Push erzwingen?
In diesem Artikel wird beschrieben, wie Sie GitHub Actions für die Durchführung von Force Pushs konfigurieren, und erörtert die möglichen Konsequenzen der Verwendung von Force Pushs mit GitHub Actions. Außerdem wird erklärt, wie man verhindert, dass GitHub Actions bestehende Commits mit f überschreiben.
Wie kann ich GitHub Actions so konfigurieren, dass er Force-Pushes durchführt?
Um GitHub-Aktionen für die Durchführung von Force-Pushs zu konfigurieren, müssen Sie die Option force
in Ihre Workflow-Datei aufnehmen. Hier ist ein Beispiel für eine Workflow-Datei, die die Option force
enthält:
<code>on: push: branches: [main] jobs: deploy: runs-on: ubuntu-latest steps: - uses: actions/checkout@v2 with: fetch-depth: 0 - uses: actions/setup-node@v2 with: node-version: '16' - run: npm install - run: npm run build - uses: actions/checkout@v2 with: fetch-depth: 0 ref: gh-pages - run: cp -r build/* . - uses: JamesIves/github-pages-deploy-action@3.7.2 with: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} BRANCH: gh-pages FOLDER: . FORCE_PUSH: true</code>
In der obigen Workflow-Datei wurde die Option force
für true
auf JamesIves/github-pages-deploy-action
gesetzt. Dies führt dazu, dass die Aktion einen Force-Push durchführt, wenn der Inhalt des Verzeichnisses build
im Zweig gh-pages
bereitgestellt wird.
Welche möglichen Konsequenzen hat die Verwendung von Force-Pushs mit GitHub-Aktionen?
Kraftstöße können gefährlich sein, wenn sie nicht sorgfältig eingesetzt werden. Wenn Sie das Pushen auf einen Zweig erzwingen, der bereits mit einem anderen Zweig zusammengeführt wurde, könnten Sie die Änderungen überschreiben, die im anderen Zweig vorgenommen wurden. Dies könnte zu Datenverlust oder anderen Problemen führen.
Im Allgemeinen ist es am besten, die Verwendung von Force-Pushs zu vermeiden, es sei denn, Sie sind absolut sicher, dass dies erforderlich ist. Wenn Sie sich nicht sicher sind, ob Sie Push erzwingen müssen oder nicht, ist es immer besser, auf Nummer sicher zu gehen und Push nicht zu erzwingen.
Kann ich verhindern, dass GitHub-Aktionen vorhandene Commits mit Force Pushs überschreiben? ?
Ja, Sie können verhindern, dass GitHub-Aktionen vorhandene Commits mit Force-Pushes überschreiben, indem Sie die Option allow_force_pushes
in Ihrer Workflow-Datei auf false
setzen. Hier ist ein Beispiel für eine Workflow-Datei, die die Option allow_force_pushes
enthält:
<code>on: push: branches: [main] jobs: deploy: runs-on: ubuntu-latest steps: - uses: actions/checkout@v2 with: fetch-depth: 0 - uses: actions/setup-node@v2 with: node-version: '16' - run: npm install - run: npm run build - uses: actions/checkout@v2 with: fetch-depth: 0 ref: gh-pages - run: cp -r build/* . - uses: JamesIves/github-pages-deploy-action@3.7.2 with: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} BRANCH: gh-pages FOLDER: . ALLOW_FORCE_PUSHES: false</code>
In der obigen Workflow-Datei wurde die Option force
für false
auf JamesIves/github-pages-deploy-action
gesetzt. Dies führt dazu, dass die Aktion fehlschlägt, wenn festgestellt wird, dass im gh-pages
-Zweig.
Das obige ist der detaillierte Inhalt vonKönnen Github-Aktionen Push erzwingen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!