git的使用總結

weixin_34377065發表於2015-06-26
git使用技巧

git使用技巧

文章概覽:

  • windows下git使用
  • vim編碼設定
  • git ls顯示中文亂碼問題

windows下git使用

從網盤下載安裝即可

  • 使用git連線github

1)生成本機的金鑰

ssh-keygen -C 'urmyfaith.qq.com' -t rsa

2)將生存的金鑰新增到github網站中

a)登陸https://github.com/settings/ssh

b)Add an SSH Key

3)測試是否可以登入github使用,新增使用者名稱和郵箱

$ ssh -T git@github.com
$ git config --global user.email "urmyfaith@qq.com"

$ git config --global user.name "urmyfaith"
$ git config --global push.default matching

4)本地git初始化

$    git init  

5) 拉取伺服器專案

$ git pull  https://github.com/urmyfaith/NotesOfDjangoBook.git 
或者
$ git pull git@github.com:urmyfaith/NotesOfDjangoBook.git

6) 修改,新增檔案,提交

git add filname_here

git commit -m "notes_here"

7) 提交更改到伺服器

git remote add origin https://github.com/urmyfaith/NotesOfDjangoBook
# also:
# git remote add origin https://github.com/urmyfaith/NotesOfDjangoBook.git
# git remote add origin git@github.com:urmyfaith/NotesOfDjangoBook.git
git push -u origin
  • 提交時候密碼的問題:

如果不想每次提交都輸入密碼,可以更改“.git/config”檔案中的url值格式為:

 url = git@github.com:[user_name]/[project_name].git
[core]
    repositoryformatversion = 0
    filemode = false
    bare = false
    logallrefupdates = true
    symlinks = false
    ignorecase = true
    hideDotFiles = dotGitOnly
[remote "origin"]
    url = git@github.com:urmyfaith/NotesOfDjangoBook.git
    fetch = +refs/heads/*:refs/remotes/origin/*
[branch "master"]
    remote = origin
    merge = refs/heads/master

git ignore file

To ignore file,edit:

.git\info\exclude

add the filetype you want to igonre to commit .
eg:

*.md~

git 打tag

顯示歷史提交

git log --pretty=oneline --abbrev-commit

給某個提交打tag

git tag v0.9 4224935

更多參考廖學峰-git-tag

你可以使用 git tag 命令來新增新標籤

git tag -a v1.0 -m 'version 1.0'

可以使用 git push 命令來將標籤推送到遠端倉庫

git push origin v1.0:v1.0

vim編碼設定

(顯示中文亂碼問題,最後一行解決)
vimrc檔案位置:

C:\Program Files\Git\share\vim

新增如下設定

set nocompatible
set number
filetype on
set history=1000
set background=dark
syntax on
set autoindent
set smartindent
set tabstop=4
set shiftwidth=4
set showmatch
set guioptions-=T
set vb t_vb=
set ruler
set nohls
set incsearch
if has("vms")
set nobackup
else
set backup
endif
set fileencodings=utf-8,gbk

git ls顯示中文亂碼問題

編輯

C:\Program Files\Git\etc\git-completion.bash

新增:

alias ls="ls --show-control-chars"

git view history

git log --pretty=oneline

檢視某個檔案的版本歷史

git log --follow -p file

git rm file git刪除檔案

移動檔案,然後從git裡移除檔案,再新增,最後提交。

mv file_form file_path_to
git rm file_from
git add file_path_to_full_name.
git commit -c "move file"

git 放棄本地修改

git checkout . 搜尋#本地所有修改的。沒有的提交的,都返回到原來的狀態
git stash #把所有沒有提交的修改暫存到stash裡面。可用git stash pop回覆。
git reset --hard HASH #返回到某個節點,不保留修改。
git reset --soft HASH #返回到某個節點。保留修改
使用命令:

git reset --hard ORIGIN/BRANCH

比如master分支:

git reset --hard origin/master

git commit –amend

修改剛才提交的commit資訊

git diff

HEAD commit 版本
Index staged版本

git diff
git diff –cached (add之後的不同)
git diff –staged (add之後的不同)

git diff HEAD (commit之後的修改本地後的不同)
git diff HEAD^ HEAD (最後兩次commit的不同)

加快git pull的速度

  • 先輸入命令ssh -N git@gitcafe.com保持連線
  • 然後新建視窗git pull/push
  • 測試時間可以使用
x:panda zx$ time git pull
Already up-to-date.
real    0m1.043s
user    0m0.058s
sys 0m0.054s

參考:

相關文章