Paano tanggalin ang mga lokal na (hindi sinusubaybayan) na mga file mula sa kasalukuyang Git working tree?

Paano tanggalin ang hindi kinakai>

6113
14 сент. Basahin nang maayos ang Setyembre 14. 2008-09-14 12:06 '08 at 12:06 pm 2008-09-14 12:06
@ 36 sagot
  • 1
  • 2

Ayon sa git malinis dokumentasyon

Tanggalin ang mga hindi kinakai>


Hakbang 1 - ipakita kung ano ang aalisin sa parameter na -n :

 git clean -n 

Malinis na hakbang - Mag - ingat: tatanggalin nito ang mga file :

 git clean -f 
  • Upang alisin ang mga direktoryo, tumakbo git clean -f -d o git clean -fd
  • Upang tanggalin ang mga binabalewala na file, patakbuhin ang git clean -f -X o git clean -fX
  • Upang alisin ang hindi pinansin at hindi binabalewala ang mga file, patakbuhin ang git clean -f -X o git clean -fX

Tandaan ang pagkakaiba sa mga kaganapan sa X para sa huling dalawang koponan.

Kung ang clean.requireForce set sa "totoo" (ang default) sa iyong pagsasaayos, dapat mong tukuyin -f , kung hindi, wala nang mangyayari.

Tingnan muli ang git-clean dokumentasyon para sa karagdagang impormasyon.

Mga Pag-andar

-f

- lakas

Kung ang variable na pagsasaayos ng clean.requireforce Git ay hindi nakatakda sa mali, ang Git na malinis ay tatangging magsimula maliban kung -f, -n, o -i ay tinukoy.

-x

Huwag gamitin ang mga pamantayan na huwag pansinin ang mga panuntunan na nabasa mula sa. Gitignore (para sa bawat direktoryo) at $ GIT_DIR / info / ibukod, ngunit ginagamit pa rin ang mga hindi papansinang mga tuntunin na tinukoy sa mga opsyon na -e. Pinapayagan ka nitong tanggalin ang lahat ng mga hindi na-proseso na file, kabi>

-X

Tanggalin lamang ang mga file na binabalewala ng Git. Maaari itong maging kapaki-pakinabang para sa pagbawi ng lahat ng bagay mula sa simula, ngunit nagse-save nang manu-manong mga file.

-n

- tuyo

Sa katunayan, huwag tanggalin ang anumang bagay, ipakita lamang kung ano ang gagawin.

-d

Tanggalin ang mga hindi kinakai>

7973
15 сент. Sumagot na ibinigay ni Andreas Ericsson 15 Set 2008-09-15 20:32 '08 at 8:32 pm 2008-09-15 20:32

Gumamit ng git clean -f -d upang matiyak na ang mga direktoryo ay tinanggal din.

border=0

Pagkatapos ay maaari mong suriin kung ang iyong mga file ay talagang nawala sa pamamagitan ng git status .

866
26 мая '09 в 23:59 2009-05-26 23:59 ang sagot ay ibinigay sa pamamagitan ng robert.berger

Nagulat ako na wa>

 git clean -i 

Nangangahulugan ito ng interactivity, at nakakuha ka ng isang maikling pangkalahatang-ideya ng kung ano ang aalisin, nag-aalok sa iyo ng pagpipilian upang isama / ibukod ang mga apektadong file. Sa pangkalahatan, ito ay mas mabilis pa kaysa sa pagpapatakbo ng sapilitan - --dry-run bago ang tunay na paglilinis.

Kakai>-d kung nais mo ring alagaan ang mga wa>

 git iclean 

Kaya, ang karagdagang manu-manong pagpapatupad ng mga interactive na utos ay maaaring mapagod para sa mga advanced na gumagamit. Ang mga araw na ito ko lamang gamitin ang na nabanggit git clean -fd

427
30 дек. Ang sagot ay ibinigay ng SystematicFrank Disyembre 30. 2013-12-30 23:12 '14 sa 11:12 2013-12-30 23:12
388
14 сент. Ang sagot ay ibinigay ng Fire Lancer sa 14 sep. 2008-09-14 12:09 '08 sa 12:09 2008-09-14 12:09

Kung ang untracked-directory ay ang iyong sariling git repository (halimbawa, isang sub-module), kai>-f dalawang beses:

git clean -d -f -f

213
25 янв. Sumagot na ibinigay ni Michał Szajbe noong Enero 25 2013-01-25 15:24 '13 sa 15:24 2013-01-25 15:24

Madaling paraan upang tanggalin ang mga untracked na file

Upang tanggalin ang lahat ng mga hindi naka-wrack na file, ang madaling paraan ay ang unang idagdag ang lahat ng ito at i- reset ang imbakan, tulad ng ipinapakita sa ibaba.

 git add --all git reset --hard HEAD 

156
03 июня '16 в 15:16 2016-06-03 15:16 Ang sagot ay ibinigay ng Thanga noong Hunyo 03 '16 sa 15:16 2016-06-03 15:16

Gusto ko git stash push -u dahil maaari mong kanselahin ang lahat ng mga ito sa git stash pop .

EDIT: Nakakita rin ako ng isang paraan upang magpakita ng isang untraceable file sa cache (halimbawa, git show stash@{0}^3 ) lifetop.pw.site/questions/507 / ...

EDIT2: git stash save gititin sa pagtatago ng push git stash save . Salamat @ script lobo.

121
11 янв. Sumagot si Hiroshi Jan 11 2014-01-11 03:41 '14 sa 3:41 2014-01-11 03:41

Ito ang palagi kong ginagamit:

 git clean -fdx 

Para sa isang napakalaking proyekto, maaari mong patakbuhin ito ng maraming beses.

98
25 нояб. ang sagot ay ibinigay ni Oscar Fraxedas noong Nobyembre 25. 2013-11-25 17:16 '13 sa 17:16 2013-11-25 17:16

git-clean ay kung ano ang iyong hinahanap. Ginagamit ito upang alisin ang mga hindi nai-proseso na file mula sa puno ng trabaho.

83
14 сент. Ang sagot ay ibinigay Espo 14 Setyembre. 2008-09-14 12:08 '08 sa 12:08 2008-09-14 12:08

Kung nais mong alisin ang mga unsigned na file mula sa isang partikular na subdirectory,

 git clean -f {dir_path} 

At isang pinagsama-samang paraan upang alisin ang hindi maaaring reproducible na mga file / file at binabalewala ang mga file.

 git clean -fxd {dir_path} 

pagkatapos nito ay magbabago ka lamang ng mga file sa git status .

73
24 сент. Ang sagot ay ibinigay Vijay C 24 Septiyembre. 2013-09-24 09:28 '13 sa 9:28 2013-09-24 09:28

git clean -fd Tinatanggal ang direktoryo

git clean -fX Tinatanggal ang mga binabalewala na mga file

git clean -fX inaalis binabalewala at hindi binabalewala ang mga file

Maaari mong gamitin ang lahat ng mga pagpipilian sa itaas sa kumbinasyon bi>

git clean -fdXx

Tingnan ang git na manu-manong para sa karagdagang tulong.

48
22 янв. Ang sagot ay ibinigay Pooja Jan 22 2015-01-22 09:33 '15 sa 9:33 2015-01-22 09:33

Tanggalin ang lahat ng hindi kinakai>

Dinadala ka nito sa parehong estado bi>

 git clean -ffdx 

Tanggalin ang lahat ng mga karagdagang folder at file sa repo na ito, ngunit hindi ang mga submodule nito.

 git clean -fdx 

Tanggalin lamang ang mga dagdag na folder, ngunit hindi ang mga file (halimbawa, ang build folder)

 git clean -fd 

Tanggalin ang hindi kinakai>

Kung ang file ay hindi binabalewala at hindi pa nakarehistro, nananatili ito. Tandaan ang kabisera X.

 git clean -fdX 

Bagong interactive na mode

 git clean 
37
12 февр. Ang sagot ay ibinigay ng Shital Shah noong Peb. 12. 2017-02-12 11:33 '17 sa 11:33 2017-02-12 11:33

OK, ang pag-alis ng mga hindi kinakai> madali, gamit ang git sa command line, gawin >

 git clean -fd 

I-double check bago gawin ito, dahil tatanggalin nito ang mga file at folder nang wa>

Gayundin sa kasong ito -f kumakatawan sa puwersa, at -d kumakatawan sa direktoryo ...

Kaya, kung nais mong tanggalin lamang ang mga file, maaari mo lamang gamitin -f :

 git clean -f 

Kung nais mong tanggalin (direktoryo) at mga file, maaari mong tanggalin lamang ang mga direktoryo at file na hindi sinusubaybayan, halimbawa:

 git clean -fd 

Maaari mo ring gamitin ang -x bandila upang isama ang mga file na binabalewala ng git. Ito ay magiging kapaki-pakinabang kung nais mong tanggalin ang lahat.

At ang pagdaragdag ng -i flag ay nagiging sanhi ng git upang humiling ng pahintulot na magtanggal ng mga file nang isa-isa habang on the go.

Kung hindi ka sigurado at gusto mong suriin muna ang lahat, idagdag ang -n flag.

Gamitin -q kung hindi mo nais na makita ang anumang ulat pagkatapos ng matagumpay na pagtanggal.

Gumawa din ako ng isang imahe sa ibaba upang gawin itong mas malilimot, lalo na nakita ko kung gaano karaming tao ang nalilito -f sa paglilinis ng isang folder o sa anumang paraan malito ito!


2019

Pinakamahusay na ginamit: git malinis

 git clean -d -x -f 

Inaalis nito ang hindi kinakai>(-d) at mga file na binabalewala ng git (-x) .

Palitan din ang -f argument na may -n upang maipatupad ang dry-run interactive mode o -i , at sasabihin nito sa iyo kung ano ang aalisin.

32
16 апр. Ang sagot ay ibinigay Chhabilal 16 apr. 2015-04-16 09:49 '15 sa 9:49 2015-04-16 09:49

Gumagamit ng interactive na diskarte:

 git clean -i -fd Remove .classpath [y/N]? N Remove .gitignore [y/N]? N Remove .project [y/N]? N Remove .settings/ [y/N]? N Remove src/com/arsdumpgenerator/inspector/ [y/N]? y Remove src/com/arsdumpgenerator/manifest/ [y/N]? y Remove src/com/arsdumpgenerator/s3/ [y/N]? y Remove tst/com/arsdumpgenerator/manifest/ [y/N]? y Remove tst/com/arsdumpgenerator/s3/ [y/N]? y 

-i para sa interactive
-f para sa lakas
-d para sa direktoryo
-x para sa mga binabalewala na mga file (idagdag kung kinakai>
Tandaan: Magdagdag -n o - tuyo upang tingnan lamang kung ano ang gagawin nito.

20
02 марта '17 в 23:09 2017-03-02 23:09 ang sagot ay ibinigay bit_cracker007 Marso 02 '17 sa 23:09 2017-03-02 23:09

Para sa akin, pagkatapos lamang magtrabaho:

 git clean -ffdx 

Sa lahat ng iba pang mga kaso, natanggap ko ang mensahe na "Skipping Directory" para sa i>

15
16 авг. ang sagot ay ibinigay rahul286 16 aug. 2016-08-16 18:29 '16 sa 6:29 ng hapon 2016-08-16 18:29

git clean -f -d -x $(git rev-parse --show-cdup) ay ginagamit lamang para sa direktoryo ng root, kahit na git clean -f -d -x $(git rev-parse --show-cdup) tawag mo sa direktoryo ng puno ng repository. Ginagamit ko ito sa lahat ng oras, dahil hindi ito pinipilit mong iwanan ang folder na kung saan ikaw ay kasalukuyang nagtatrabaho, at nagbibigay-daan sa iyo upang i-clear at ayusin ang tama mula sa lugar kung nasaan ka.

Tiyaking tumutugma ang -f , -d , -x flags sa iyong mga pangangai>

 -d Remove untracked directories in addition to untracked files. If an untracked directory is managed by a different Git repository, it is not removed by default. Use -f option twice if you really want to remove such a directory. -f, --force If the Git configuration variable clean.requireForce is not set to false, git clean will refuse to delete files or directories unless given -f, -n or -i. Git will refuse to delete directories with .git sub directory or file unless a second -f is given. This affects also git submodules where the storage area of the removed submodule under .git/modules/ is not removed until -f is given twice. -x Don't use the standard ignore rules read from .gitignore (per directory) and $GIT_DIR/info/exclude, but do still use the ignore rules given with -e options. This allows removing all untracked files, including build products. This can be used (possibly in conjunction with git reset) to create a pristine working directory to test a clean build. 

May mga iba pang mga flag, piliin >git clean --help .

15
02 дек. Ang sagot ay ibinigay ni Nikita Leonov Disyembre 2 2015-12-02 20:57 '15 sa 20:57 2015-12-02 20:57

Kung gusto mo >

 git stash save -u git stash drop "stash@{0}" 

Mas gusto ko itong "git clean", dahil ang "git clean" ay aalisin ang mga file na binabalewala ng git, kaya ang iyong susunod na build ay kai>

13
02 марта '16 в 5:09 2016-03-02 05:09 ang sagot ay ibinigay jazzdev 02 Marso '16 sa 5:09 2016-03-02 05:09

Pagkakabuhay para sa ganitong sitwasyon Inimbento ko >

 git add . git reset --hard HEAD 
Mag-ingat Siguraduhing kopyahin ang anumang mga kinakai> (kahit na sa mga hindi tapat na mga file) bago gawin ito .
13
21 февр. ang sagot ay ibinigay sa thybzi Pebrero 21. 2016-02-21 20:29 '16 sa 8:29 ng hapon 2016-02-21 20:29

Upang malaman kung ano ang tatanggalin bago ang aktwal na pag-alis:

git clean -d -n

Ito ay magpapadala ng isang bagay tulad ng:

Tinatanggal ang sample.txt

Upang alisin ang lahat ng bagay na nakalista sa output ng nakaraang command:

git clean -d -f

Ito ay magpapadala ng isang bagay tulad ng:

I-uninstall ang sample.txt

10
16 февр. Ang sagot ay ibinigay ni Omar Mowafi noong Pebrero 16. 2016-02-16 11:42 '16 sa 11:42 2016-02-16 11:42

Upang tanggalin ang mga hindi nagamit na mga file, dapat mo munang gamitin ang command upang tingnan ang mga file na maaapektuhan ng paglilinis.

 git clean -fdn 

Ipapakita nito sa iyo ang listahan ng mga file na tatanggalin. Ngayon, upang aktwal na tanggalin ang mga file na ito, gamitin ang sumusunod na command:

 git clean -fd 
8
25 окт. sumagot na ibinigay ni Gaurav Oktubre 25. 2016-10-25 12:09 '16 sa 12:09 ng 2016-10-25 12:09

Dapat talagang banggitin ang isang tao:

 git clean [<options>] 

Tama ba ako

7
27 авг. sagot na ibinigay ni joeytwiddle Agosto 27. 2015-08-27 13:18 '15 sa 1:18 ng hapon 2015-08-27 13:18

Mag-ingat kapag pinatakbo ang `git malinis` na utos.

Laging gamitin -n bago patakbuhin ang aktwal na utos, ipinapakita kung aling mga file ang matatanggal.

 git clean -n -d git clean -f -d 

Bi>git clean ay magtatanggal lamang ng mga hindi nagamit na mga file na hindi binabalewala. Ang anumang file na tumutugma sa pattern sa iyong. Gitignore o iba pang huwag pansinin ang mga file ay hindi tatanggalin. Kung gusto mo ring tanggalin ang mga file na ito, maaari mong idagdag ang command na -x sa isang malinis na command.

 git clean -f -d -x 

Mayroon ding isang -i interactive na mode na may malinis na utos.

 git clean -x -i 

Bi>

Kung ikaw ay hindi 100% sigurado na ang pagtanggal ng iyong hindi natapos na trabaho ay ligtas, maaari mong gamitin ang stashing sa halip.

 git stash --all 

Aalisin din nito ang iyong direktoryo, ngunit binibigyan ka ng kakayahang umangkop upang kunin ang mga file sa anumang oras gamit ang stash na may nalalapat o pop . Pagkatapos sa isang mas huling point, maaari mong i-clear ang iyong cache gamit ang:

 git stash drop // or clean 

6
22 окт. Sumagot DevWL Oktubre 22. 2017-10-22 00:44 '17 sa 0:44 2017-10-22 00:44

git clean -f to remove untracked files from working directory.

Tinakpan ko ang ilan sa mga pangunahing kaalaman dito sa aking blog, git-intro-basic-commands

5
16 февр. ang sagot ay ibinigay ysk 16 feb . 2017-02-16 12:05 '17 sa 12:05 2017-02-16 12:05

Madali nating alisin ang mga lokal na untracked na file mula sa kasalukuyang git working tree gamit ang git na mga komento sa ibaba.

 git reset [--soft | --mixed [-N] | --hard | --merge | --keep] [-q] [<commit>] 

Halimbawa:

 git reset --hard HEAD 

Mga sanggunian:

  1. https://git-scm.com/docs/git-reset
  2. Paano ko gagamitin ang 'git reset - hard HEAD' upang bumalik sa nakaraang gumawa?
  3. I-reset ang lokal na repository branch upang mukhang ang remote na repository HEAD
  4. https://jwiegley.github.io/git-from-the-bottom-up/3-Reset/4-doing-a-hard-reset.html
5
01 сент. Sumagot na ibinigay ni Mohideen ibn Mohammed noong Sep 01 2017-09-01 09:23 '17 sa 9:23 ng umaga 2017-09-01 09:23

Ang karaniwang git clean command ay hindi nag-aalis ng hindi nagamit na mga file sa git version 2.9.0.windows.1 .

 $ git clean -fdx # doesn't remove untracked files $ git clean -fdx * # Append star then it works! 
5
11 окт. ang sagot ay ibinigay kujiy 11 oct. 2016-10-11 03:14 '16 sa 3:14 2016-10-11 03:14

I-clear ang git repository at lahat ng submodules recursively

Ang sumusunod na utos recursively nililimas ang kasalukuyang git repository at lahat ng mga submodules nito:

 (git clean -d -x -f  git submodule foreach --recursive git clean -d -x -f) 
3
25 сент. ang sagot ay ibinigay Sergey 25 sep. 2017-09-25 19:25 '17 sa 7:25 ng hapon 2017-09-25 19:25

oh-my-zsh na may zsh ay nagbibigay ng mga mahusay na alias sa pamamagitan ng git plugin. Maaari rin itong gamitin sa Bash.

gclean='git clean -fd'
gpristine='git reset --hard git clean -dfx'

  • gclean inaalis untraceable direktoryo bukod sa untracked file.
  • gpristine hard-drop ng mga lokal na pagbabago, nag-aalis ng mga direktang direktoryo, mga hindi naka-wrack na file, at hindi gumagamit ng mga standard ignore rule na binasa mula sa .gitignore (para sa bawat direktoryo) at $ GIT_DIR / info / ibukod, ngunit ginagamit pa rin ang mga tuntunin na itinakda sa -e. Pinapayagan ka nitong tanggalin ang lahat ng mga hindi naka-wrack na file, kabi>
3
02 нояб. Ang sagot ay ibinigay ZenLulz Nobyembre 2. 2017-11-02 11:24 '17 sa 11:24 2017-11-02 11:24
 git clean -f 

aalisin ang mga untracked na file mula sa kasalukuyang git

 git clean -fd 

kapag nais mong tanggalin ang mga direktoryo at mga file, tatanggalin lamang nito ang mga direktang direktoryo at mga file.

1
18 мая '18 в 9:04 2018-05-18 09:04 ang sagot ay ibinigay ni sudhir Vishwakarma noong Mayo 18 '18 sa 9:04 2018-05-18 09:04
  • 1
  • 2

Iba pang mga katanungan tungkol sa o Magtanong ng isang Tanong