① 如何只更新修改的代碼,並同步到我的個人網站伺服器
1. 通過 git需要伺服器跟本地都裝有 git,走 SSH,需要部署時 push 即可(這個使用場景很常見,一搜一大把,沒什麼好說的)。2. 通過 rsync這個其實比 git 還簡單,一條命令就搞定,也是走 SSH rsync -avP /path/to/project user@remotehost:/path/to/www
② svn伺服器的代碼可以同步到伺服器嗎
開發過程中,需要經常將SVN伺服器上的代碼同步到測試伺服器上,一般做法,需要人工手工更新,這樣很浪費工夫。下面的腳本為svnserver的鉤子程序,放在svn伺服器上,只要代碼更新,就會自動提交的測試伺服器上。
使用條件:
1、SVN主機是WIN系統,如果要在linux的SVN主機上用,需要修改下面的代碼為sh腳本,道理類似,代碼不同。有需要的自行更改吧。
2、SVN主機上需要安裝完整版的PUTTY安裝包,而不是一個EXE.
3、測試伺服器可以用putty登錄
@echooff
rem本腳本實現將SVN伺服器A(win環境)上提交的代碼,自動上傳(通過pscp)到測試環境的伺服器B(linux)上,如果SVN在LINUX環境下,根據本代碼自行調整。
remsvn伺服器上版本庫地址
setreposLoc=%1
setREV=%2
rem----------------------------------------------------------------------配置開始
remsvn伺服器上putty的路徑
setputtyPath="D:ProgramFiles(x86)PuTTY"
rem測試環境putty登錄的用戶名
setusername=root
rem測試環境putty登錄的密碼
setpassword=password
rem測試環境IP
sethost=10.1.1.1
rem測試環境代碼根地址
setremoteRootPath=/var/www/htdocs/test
rem----------------------------------------------------------------------配置結束
cd/d%puttyPath%
rem遍歷提交了的代碼
for/f"tokens=2delims="%%iin('svnlookchanged%reposLoc%')do(
set"var=%%i"
svnlookcat!reposLoc!!var!>temp.txt
rem替掉路徑中的trunk
setnewPath=!var:trunk=!
rem通過pscp提交到測試伺服器
echoy|pscp-l!username!-pw!password!temp.txt!host!:!remoteRootPath!!newPath!
)
使用方法:
將上面的代碼中配置區的變數修改,並將內容保存成bat文件,命名為post-commit.bat,放在SVN伺服器上版本庫的hooks目錄下。提交代碼試試看吧。經測試可行。
當然,這個腳本可以再做的牛比點兒,可以針對某個用戶的提交做更新,也可以分析SVN提交時的日誌,只有當日誌中有特定的字元時更新。
另外,由於上面的腳本,只更新當前的提交,所以假設只針對某個用戶的提交做更新時,不能只更新當前提交,這樣其它用戶的提交就落掉了,需要更新整個工程。
③ 如何通過git把本地的代碼上傳到伺服器
1、首先需要安裝Git,如果已經安裝,請跳過。由於Git是Linux開發的,所以大部分使用在Linux系統上,但肯定會有windows版的,我本身使用的是win10,下載安裝即可:https://git-for-windows.github.io/
2、安裝好git伺服器後。首先找到你項目的文件夾,比如項目名稱為myproject,進入到這個文件夾,右鍵打開模擬linux風格的命令窗口
接下來依次執行命令:
git init // 初始化版本庫git add . // 添加文件到版本庫(只是添加到緩存區),.代表添加文件夾下所有文件 git commit -m "first commit" // 把添加的文件提交到版本庫,並填寫提交備注12345
到目前為止,我們完成了代碼庫的初始化,但代碼是在本地,還沒有提交到遠程伺服器,所以關鍵的來了,要提交到就遠程代碼伺服器,進行以下兩步:
git remote add origin 你的遠程庫地址 // 把本地庫與遠程庫關聯git push -u origin master // 第一次推送時git push origin master // 第一次推送後,直接使用該命令即可推送修改12345
把本地庫的內容推送到遠程。使用 git push命令,實際上是把當前分支master推送到遠程。執行此命令後會要求輸入用戶名、密碼,驗證通過後即開始上傳。
說明:用戶名密碼需要通過命令 ssh-keygen -t rsa -C 「[email protected]」進行創建,並且要把得到的秘鑰(公鑰)文件放到git伺服器上,這樣才有許可權進行代碼推送
到此就成功的把本地的代碼放到了遠程伺服器上,這樣就能讓項目組成員進行寫作開發了。
④ 怎麼在瀏覽器端修改代碼同步到伺服器
改最終都是要改
web服務
器上用到的文件的。你可以在別的地方修改再上傳到伺服器上覆蓋原文件。有可能有些
web伺服器
已經緩存了文件,傳完後需要重啟web服務。更改網站內容不會影響搜索引擎的錄取功能的。
⑤ eclipse可以同步代碼到指定伺服器么
eclipse本身沒有這個功能,你可以使用svn插件,或者直接下載svn本地端,就可以同步代碼到伺服器上。
⑥ 如何把測試伺服器上的代碼通過svn同步到正式伺服器上
您好,最簡單的辦法,將SVN伺服器和測試伺服器架設在同一台主機上,然後編輯SVN的post-commit鉤子腳本,這個鉤子是在每次成功commit後由SVN伺服器自動調用執行的,存放在SVN伺服器上該版本庫的hooks文件夾下,編輯這個腳本,調用svn的checkout或者update,在SVN伺服器主機上得到一個最新版的SVN客戶端文件夾,接著通過這個腳本調用編譯、部署指令,部署到測試伺服器指定的文件夾,這就ok了。這樣每次commit後就會自動發布一個新的測試版到測試伺服器上。
當然了,也可以用操作系統的定時任務來做這個,來定時發布新測試版。
⑦ 如何同步本地php代碼到遠程機器,來實現本地開發
解決方式肯定是將本地代碼傳到伺服器。其實就是類似ftp服務了。
有這幾種比較方便的。
1.使用 phpstorm 自帶的功能模塊
2.使用 samba 進行文件同步
⑧ 怎樣通過SVN自動更新代碼到伺服器
把下面代碼添加了svn/hooks/post-commit里(替換部分路徑)。當有svn提交,系統發現提交的代碼涉及相關目錄,就會通過rsync把代碼同步到web伺服器。不過這里還需要做一個rsync免輸密碼的設置。
#!/bin/sh
lines="$(cd /projects && svn up | wc -l)"
if [ $lines -gt 1 ]
then
cd /projects && rsync -rv * [email protected]:/var/www/
fi