git的使用

git簡介

git是一個分佈式版本控制軟件,最初由林納斯·託瓦茲(Linus Torvalds)創做,於2005年以GPL發佈。最初目的是爲更好地管理Linux內核開發而設計。python

Git 官方中文手冊 https://git-scm.com/book/zh/v2linux

安裝git

一、yum安裝gitgit

yum install git -y

二、編譯安裝github

編譯安裝能夠安裝較新版本的gitsql

Git下載地址: https://github.com/git/git/releases數據庫

# 安裝依賴關係
yum install curl-devel expat-devel gettext-devel  openssl-devel zlib-devel
# 編譯安裝
tar -zxf git-2.0.0.tar.gz
cd git-2.0.0
make configure
./configure --prefix=/usr
make  
make install  

配置git

git config --global user.name "ljy"  #配置git使用用戶
git config --global user.email "1129719492@qq.com"  #配置git使用郵箱
git config --global color.ui true  #語法高亮
git config --list # 查看全局配置
cat .gitconfig   #查看生產的配置文件

獲取git倉庫

# 建立目錄
mkdir git_data
# 進入目錄
cd git_data/
# 初始化
git init
# 查看工做區狀態
git status

git命令常規操做

一、建立文件

[root@gitlab git_data]# touch README
[root@gitlab git_data]# git status
[root@gitlab git_data]# git add ./*
[root@gitlab git_data]# git status  #添加文件追蹤
# 位於分支 master
#
# 初始提交
#
# 要提交的變動:
#   (使用 "git rm --cached <file>..." 撤出暫存區)
#
#    新文件:    README

由工做區提交到本地倉庫express

[root@gitlab git_data]# git commit  -m 'first commit'  
#查看git的狀態
[root@gitlab git_data]# git status
# 位於分支 master
無文件要提交,乾淨的工做區

二、添加新文件

git add  * 添加到暫存區域
git commit -a -m "註釋信息"  提交git倉庫 -m 後面接上註釋信息,內容關於本次提交的說明,方便本身或他人查看 -a表示直接提交

三、刪除git內文件

• 沒有添加到暫存區的數據直接rm刪除便可。apache

• 已經添加到暫存區數據:django

git rm --cached database centos

#→將文件從git暫存區域的追蹤列表移除(並不會刪除當前工做目錄內的數據文件)

git rm -f database

#→將文件數據從git暫存區和工做目錄一塊兒刪除

GitHub託管

Github顧名思義是一個Git版本庫的託管服務,是目前全球最大的軟件倉庫,擁有上百萬的開發者用戶,也是軟件開發和尋找資源的最佳途徑,Github不只能夠託管各類Git版本倉庫,還擁有了更美觀的Web界面,您的代碼文件能夠被任何人克隆,使得開發者爲開源項貢獻代碼變得更加容易,固然也能夠付費購買私有庫,這樣高性價比的私有庫真的是幫助到了不少團隊和企業。

一、註冊GitHub

瀏覽器訪問github官網 : https://github.com/ ,點擊Sign up 進行註冊

二、添加祕鑰

在github上添加一個新的ssh密鑰

獲取主機(linux)上的密鑰

[root@centos ~]# ssh-keygen 

[root@centos ~]# cat .ssh/id_rsa.pub 

 

三、建立倉庫

 準備工做已經完畢,右上角點擊建立一個新的倉庫

建立倉庫,輸入我的信息

根據上面的提示,建立一個代碼倉庫

四、推送測試

[root@gitlab ~]# mkdir -p clsn 
[root@gitlab ~]# cd clsn/
[root@gitlab clsn]# echo "# test" >> README.md
[root@gitlab clsn]# git init
初始化空的 Git 版本庫於 /root/clsn/.git/
[root@gitlab clsn]# git add README.md
[root@gitlab clsn]# git commit -m "first commit"
[master(根提交) 089ae47] first commit
 1 file changed, 1 insertion(+)
 create mode 100644 README.md
[root@gitlab clsn]# git remote add origin git@github.com:datagd/test.git
[root@gitlab clsn]# git push -u origin master

推送完成,刷新界面就能夠發現,推送上去的README.md文件

五、建立新文件,進行拉取測試

建立好後點擊下面的commit便可

客戶端進行拉取

git push

 

pycharm使用Github管理項目

Github是咱們首選的開源代碼倉庫,若是你沒有私有倉庫,而且不用保護代碼,那麼將項目上傳到Github上是最佳的選擇。

1、 建立requirements.txt文件

requirements.txt文件是一個項目的依賴文件,能夠經過下面的方式自動生成:

進入虛擬環境,切換到項目根目錄下,使用pip工具的freeze參數。

pip freeze  > ./requirements.txt

打開requirements.txt文件,其內容以下:

Django==2.1.7
django-ranged-response==0.2.0
django-simple-captcha==0.5.10
Pillow==5.4.1
PyMySQL==0.9.3
pytz==2018.9
six==1.12.0
virtualenv==16.4.3

他人若是拷貝了咱們的代碼,要安裝第三方庫依賴的話,只須要:

pip install -r requirements.txt

就能夠一次性安裝好全部的庫了。

2、建立.gitignore文件

在項目代碼中,有一些文件是不能上傳的,好比密碼文件、數據庫文件、核心配置文件等等,還有一些是不用上傳的,好比臨時文件。爲了讓git自動忽略這些文件,咱們須要建立一個忽略名單。

在項目根目錄下新建一個.gitignore文件,這裏可能須要你在Pycharm下安裝ignore插件,以下圖所示:

我這裏是已經安裝好了,新安裝的話,要在搜索欄裏搜索到插件後再安裝。

.gitignore文件裏寫入下面的內容:

.idea
settings.py
db.sqlite3
mysite/__pycache__/

這些文件將不會上傳到Github中,也不會進行版本管理。

3、特殊文件處理

對於settings.py文件有個問題,若是沒有這個文件是沒法運行Django項目的,可是settings中又可能包含不少關鍵的不可泄露的部分,好比SECRET_KEY:

# SECURITY WARNING: keep the secret key used in production secret!
SECRET_KEY = 'b(&6i_$g2%8vh)ruu$)a9pkw+s-e&qj_e_#=@gnbo^48#gp_8a'

還有數據庫的IP/port、用戶名和密碼,郵件發送端的用戶名和密碼,這些都是絕對不能泄露的。

那怎麼辦呢?簡單!複製settings文件,並重命名爲settings.example.py文件,放在同一目錄裏,把敏感信息、密碼等修改或刪除。使用者看到這個文件名,天然會明白它的做用。

4、添加說明文件和許可文件

一般咱們要給Github的倉庫添加說明文件和許可文件。

在項目根目錄下建立一個README.md文件,這是markdown格式的。在文件裏寫入項目說明,使用方法,注意事項等等全部你認爲須要說明的東西。

對於許可文件LICENSE,若是你暫時不想公開受權,或者不知道用哪一種受權,能夠暫時不提供。

下面是一個APACHE2.0受權的範例:

   mysite - User login and register system

   Copyright 2017- www.liujiangblog.com

   Licensed under the Apache License, Version 2.0 (the "License");
   you may not use this file except in compliance with the License.
   You may obtain a copy of the License at

       http://www.apache.org/licenses/LICENSE-2.0

   Unless required by applicable law or agreed to in writing, software
   distributed under the License is distributed on an "AS IS" BASIS,
   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   See the License for the specific language governing permissions and
   limitations under the License.

5、配置pycharm使用github

(1)配置pycharm

這一步很關鍵,不少同窗配置完github就直接開始使用了,結果倒是各類錯誤。

這是由於,除了配置github外還要配置本地的git軟件。Github的配置只是告訴了Pycharm你的帳號和密碼,pycharm還不知道如何進行版本控制操做,它底層仍是須要調用git的功能的。

所以,請提早下載並安裝git程序到你的本機。 Windows中,可使用Git-2.8.1-64-bit,請自行百度下載並安裝,而後設置。

安裝完以後配置一下環境變量

 

6、上傳代碼

配置完了,就能夠正常使用了,點擊頂部菜單欄的VCS選項。

若是有以下報錯,能夠這樣處理
git git config --global user.email you@example.com git config
--global user.name Your N... run_motor. PyCharm will ask if you want to add it to git; we’re using git to synchronize c...

 

 

在上傳過程當中,確認文件列表的時候,必定要注意查看沒有保密文件被上傳。

等待一會,項目文件上傳完畢後,進入Github的倉庫頁面,以下所示:

 

 

如今,全部人均可以經過下面的方式,下載和使用本項目的源代碼了:

https://github.com/datagd/python_project_1.git
相關文章
相關標籤/搜索