2012-09-06 44 views

回答

42

運行p4 opened查看所有打開的文件並運行p4 revert來還原它們。

然後運行p4 changes -c your-client-name -s pending查看所有待處理的更改列表。由於在第一步中,您恢復了所有打開的文件,這些更改列表將全部爲空。運行p4 change -d change-number刪除每個空的待處理更改列表。

然後你可以運行p4 client -d來刪除你的客戶端。

+4

對於恢復和刪除未決變更表,我更喜歡這個序列:'P4變化-u joe'列出待處理的變更表; 'p4 revert -c 12345 // ...'恢復待處理更改列表12345中的所有文件(例如); 'p4 change -d 12345'刪除現在空的更改列表。 HTH。 – Jeffro

+0

@Jeffro你的解決方案,'p4 revert -c CLN // ...'節省我的時間,以便逐一恢復打開的文件。 – VicX

41

爲什麼只有11個點擊P4V,通過任意順序的菜單項。

  1. 右擊變更列表
  2. 刪除擱置的文件
  3. 「是」
  4. 右擊變更列表
  5. 刪除所有作業
  6. 上改變列表右擊
  7. 還原文件
  8. '恢復'
  9. 右擊變更列表
  10. 刪除未決的變更表
  11. 「是」

咱們把Perforce的使用性學校。

9

這裏是我做過什麼清空我的默認更改集,其中有很多文件被檢出編輯:​​

p4 opened | sed 's/#.*$//g' | xargs -iF p4 revert F 

這將切斷註釋部分由p4 opened和管道所產生的文件名filename到p4 revert。之後,我什麼也沒有,p4 changes -c my-client-name -s pending什麼也沒有。如果你有一個巨大的變化集,這將需要一段時間。

+0

愛這個..謝謝男人! –

+0

這裏不需要'xargs'(特別是不需要'-i'選項,即使在Linux上也不可移植和廢棄)。改爲使用'p4 -x -'(請參閱'p4 help usage')。此外,爲了避免等待您設置了巨大變更,請使用'-k'選項'p4 revert'。 –

7

這是一個用於刪除Perforce客戶端的腳本化過程。謹慎使用:這會刪除客戶端上正在進行的所有工作!

  1. 恢復此客戶端上的所有更改的文件。

    p4 -c $CLIENT revert -k //... 
    

    注意使用-k選項,其中「作爲恢復服務器的元數據,而不會改變文件在客戶工作區標誌着文件」的。由於我們稍後會刪除客戶端,因此我們不關心更新客戶端工作區。如果你打開了很多文件,這會加快速度。

  2. 刪除與客戶端關聯的掛起更改中的所有擱置文件。

    p4 changes -s shelved -c $CLIENT | cut -d' ' -f2 | 
    while read CHANGE; do p4 shelve -c $CHANGE -d //...; done 
    

    如果您從不使用p4 shelve您可以省略此步驟。

  3. 所有與客戶端關聯的掛起更改現在都是空的。刪除它們。

    p4 changes -s pending -c $CLIENT | cut -d' ' -f2 | p4 -b 1 -x - change -d 
    
  4. 現在沒有待處理的與客戶端相關的更改。刪除客戶端。

    p4 client -d $CLIENT 
    

(這個過程應該是容易得多!特別是,似乎沒有很好的理由,我們必須在刪除客戶端之前刪除客戶端相關聯擱置的文件。如果你發現自己有這個掙扎,做聯繫Perforce的支持,並建議將它變得更簡單。)

+0

我在另一臺主機上擱置了更改(切換計算機後)。爲了能夠執行第2步,我必須將工作區的主機更改爲當前的主機。 – Pascal

+0

該幫助表明,儘管不匹配,您可以使用'-f'選項強制刪除。 (儘管你需要「管理員」權限。) –

+0

問題明確地告訴我們沒有可用的管理權限。我想對於大多數從事專業工作(=正在獲得報酬)的人來說,情況就是這樣。 – Pascal

5

寫這個劇本叫p4-delete-client用於刪除P4客戶端(有變更表中其他&問題)。
它具有以下特徵:

  • 自動刪除變更表(恢復未決&刪除擱置)
  • 修復主機名(如果從客戶端上創建的一個不同)
  • 解鎖客戶端,如果鎖定
  • 刪除客戶
  • 刪除相關聯的文件(可被配置成不從參數)

請注意,該腳本依賴於repo中的其他腳本。

2

嘗試這些步驟:

  1. 1.右鍵單擊修改列表

  2. 選擇 '更改所有權'

  3. 在工作區框中選擇現有的工作空間,然後單擊確定

  4. 右鍵單擊更改列表,然後選擇刪除,然後選擇確定。
0

這只是爲我工作在P4V重置缺省的變更:

  1. 右鍵單擊缺省的變更,然後選擇「編輯待定 變更列表‘默認’」

  2. 點擊右下角的按鈕「保存爲編號更改列表」

  3. 右鍵單擊新的更改列表並選擇「刪除更改列表XXX」

您還可以右鍵單擊新的更改列表以恢復文件,無論您需要做什麼,這在默認更改列表中都不可用。

1

在可以刪除更改列表之前,所有文件都需要恢復。通過P4V

兩個步驟(2013.4版):

  1. 恢復所有的文件。

    Right click the pending changelist, and then choose "Revert Files"

  2. 刪除更改列表。

    Right click the changelist, and then choose "Delete Pending Changelist 'XXXXXX'"

相關問題