1. 程式人生 > >在Windows 7/8/10下安裝Python開發環境 以及對git的理解與簡易使用

在Windows 7/8/10下安裝Python開發環境 以及對git的理解與簡易使用

在Windows 7/8/10下安裝Python開發環境

1. 裝Lantern等軟體翻牆

2. 安裝Python(Python installer 帶有一個低版本的Pip)。確保普通使用者對Python安裝在C盤的路徑,有寫許可權。
圖片

圖片
根據電腦的作業系統選擇相應的python安裝包

3. python installer 自帶pip包管理器,所有一般情況下不需要在安裝一遍pip包管理器

4. 安裝git-scm,使得win具備Linux cli。不過絕大多數命令多了exe字尾!!!如python.exe

5. 在“我的電腦”裡修改python的管理許可權。(這一步就是為了確保普通使用者對Python安裝在C盤的路徑,有寫許可權。)
圖片


6. 用git更新pip到最新版本:python -m pip install --upgrade pip

7. 用 pip安裝 pandas 0.16.2和jupyter
pip.exe install -I jupyter
pip.exe install -I pandas==0.16.2 jupyter
pip.exe install -I numpy
等其他安裝包(除非修改了repo為國內映象,否則最好“科學上網”。另外上一點的寫許可權滿足,才能成功安裝,否則拋WindowsError

8. 執行jupyter:jupyter-notebook.exe


(執行jupyter-notebook.exe在預設瀏覽器,以該指令執行的目錄為工作目錄,啟動notebook IDE)

對git的理解與簡易使用
Git
1. Git:免費、開源的分散式版本控制系統,用於敏捷高效地處理任何或小或大的專案。與之前用過的SVN很像。

2. Git — The stupid content tracker, 傻瓜內容跟蹤器。採用“工作流”的形式進行記錄。
3. Git 是用於 Linux核心開發的版本控制工具。目前GIT已經可以在windows下使用,Windows版本的GIT提供了友好的GUI(圖形介面),安裝後很快可以上手。
4. 對Git工作流的深度理解
可見連結詳細解釋

link text1
link text2
4.1 集中式工作流

也許在之前的開發中國你已經很熟悉Subversion,集中式工作流讓你無需去適應一個全新流程就可以體驗Git帶來的收益。這個工作流也可以作為向更Git風格工作流遷移的友好過渡。
圖片
Git加強開發的工作流相比SVN的幾個優勢:
—>首先,每個開發可以有屬於自己的整個工程的本地拷貝。隔離的環境讓各個開發者的工作和專案的其他部分修改獨立開來 ,自由地提交到自己的本地倉庫,先完全忽略上游的開發,直到方便的時候再把修改反饋上去。
—>其次,Git提供了強壯的分支和合並模型。不像SVN,Git的分支設計成可以做為一種用來在倉庫之間整合程式碼和分享修改的『失敗安全』的機制。

4.2 工作方式
相比SVN預設的開發分支trunk,Git叫做master,所有修改提交到這個分支上。
開發者開始先克隆中央倉庫。在自己的專案拷貝中像SVN一樣的編輯檔案和提交修改;但修改是存在本地的,和中央倉庫是完全隔離的。開發者可以把和上游的同步延後到一個方便時間點。
要釋出修改到正式專案中,開發者要把本地master分支的修改『推』到中央倉庫中。這相當於svn commit操作,但push操作會把所有還不在中央倉庫的本地提交都推上去。
圖片

4.3 衝突解決
中央倉庫代表了正式專案,所以提交歷史應該被尊重且是穩定不變的。如果開發者本地的提交歷史和中央倉庫有分歧,Git會拒絕push提交否則會覆蓋已經在中央庫的正式提交。
圖片
在開發者提交自己功能修改到中央庫前,需要先fetch在中央庫的新增提交,rebase自己提交到中央庫提交歷史之上。
這樣做的意思是在說,『我要把自己的修改加到別人已經完成的修改上。』最終的結果是一個完美的線性歷史,就像以前的SVN的工作流中一樣。
如果本地修改和上游提交有衝突,Git會暫停rebase過程,給你手動解決衝突的機會。Git解決合併衝突,用和生成提交一樣的git statusgit add命令,很一致方便。還有一點,如果解決衝突時遇到麻煩,Git可以很簡單中止整個rebase操作,重來一次(或者讓別人來幫助解決)。

Git功能:
1. 從伺服器上克隆完整的遠端Git倉庫(包括程式碼和版本資訊),到本地倉庫中:git clone+倉庫連結

2. 從一個分支切換到另一個分支:git checkout+分支名,如切換到testing分支

$ git checkout testing

3. 在將遠端倉庫中的程式碼更新到本地倉庫之前,進行本地倉庫程式碼檢查,掌握本地倉庫當前狀態:git status
4. 對遠端倉庫進行修改,將遠端倉庫中的程式碼更新到本地倉庫:git pull

5. 在自己的機器上根據不同的開發目的,建立分支,修改程式碼

6. 建立分支,且不會自動切換當前分支:git branch,如在當前 commit 物件上新建一個分支指標testing

$ git branch testing

7. 在本地倉庫上合併分支:git merge

8. 從一個分支轉移到另一個分支:git checkout

9. 將修改後的程式碼儲存在本地倉庫中:git commit(和SVN不同,SVN只有遠端倉庫,沒有本地倉庫,所以SVN中的commit是指將在本地修改好的程式碼提交給遠端倉庫)

10. 將儲存在本地倉庫的程式碼釋出至遠端倉庫中:git push

11. 將某個目錄下的所有內容全都納入內容跟蹤之下:git add

12. 對Git分支的一個詳細理解與程式碼可見連結link text3