git被隱藏
用git管理工程,默認.git問價是隱藏的。由於從git遠程倉庫下載下來的代碼,如果.git文件隱藏,在需要用命令行進行git管理代碼時,可能拿捏不準要cd到哪層,如果能看到.git文件就很輕易知道工作空間的路徑了(即cd到.git所在的文件夾即可)。
讓.git目錄顯示的命令(兩條)如下:
defaults write com.apple.finder AppleShowAllFiles TRUE
killall Finder
無論在哪創建哪個工程託管代碼到git,git目錄都能看到了
上述命令會使系統所有隱藏文件變爲可見狀態,注意不要碰一些不懂的文件,容易造成系統問題。
如果想恢復隱藏,可以用這個命令:
defaults write com.apple.finder AppleShowAllFiles -bool false
注意:1、執行命令後需要重啓 Finder 才能看到效果。
常用的命令行
如何快速上傳項目
git init
#建立新項目
touch newfile
#填寫個人信息
git config user.name' '
git config user.email' '
#把後綴爲txt全放入緩存區
git add *.txt
#把緩衝區的內容撤回
git rm --cathed
#上傳方法一(然後會進入vim,你把initial commit的註釋去掉,然後esc,再:wq)
git commit
#上傳方法二 (不進入vim,''裏面加註釋’)
git commit -m '註釋'
#列忽略名單(名單的文件不被上傳,打入log.txt 或 dir/log.js)
touch .gitignore
#建立遠程倉庫
git remote add origin +‘鏈接’
#上傳遠程倉庫
git push -u origin master
如何處理分支和master
#建立my分支
git brach my
#檢查並切換
git checkout my
#回主幹
git checkout master
#合併
git merge my
#設置主幹
git push --set-upstream origin master
報錯處理
! [rejected] master -> master (non-fast-forward)
error: failed to push some refs to ‘https://github.com/waterbrother2019122132/-.git’
解決方法
方法一
git config --global pull.rebase true
git config --global rebase.autoStash true
方法二
暴力推送
git push -f origin master
方法三
$ git config branch.master.remote origin
$ git config branch.master.merge refs/heads/master
再git pull 下 最後git push
git 查看版本差異
轉載於 小菠蘿測試筆記
|1git diff
你可以用 git diff 來比較項目中任意兩個版本的差異。
$ git diff master..test
上面這條命令只顯示兩個分支間的差異,如果你想找出 master , test 的共有父分支和 test 分支之間的差異,你用3個‘.‘來取代前面的兩個’.’ 。
$ git diff master...test
|2哪些內容會被提交(commit)
通常用git diff來找當前工作目錄和上次提交與本地索引間的差異。(最簡單快捷)
$ git diff
上面的命令會顯示在當前的工作目錄裏的,沒有 staged(添加到索引中),且在下次提交時不會被提交的修改。
如果你要看在下次提交時要提交的內容(staged,添加到索引中),你可以運行:
$ git diff --cached
上面的命令會顯示你當前的索引和上次提交間的差異;這些內容在不帶"-a"參數運行 "git commit"命令時就會被提交。
$ git diff HEAD
上面這條命令會顯示你工作目錄與上次提交時之間的所有差別,這條命令所顯示的內容都會在執行"git commit -a"命令時被提交。
|3更多的比較選項
如果你要查看當前的工作目錄與另外一個分支的差別,你可以用下面的命令執行:
$ git diff test
這會顯示你當前工作目錄與另外一個叫’test’分支的差別。你也以加上路徑限定符,來只比較某一個文件或目錄
$ git diff HEAD -- ./lib
上面這條命令會顯示你當前工作目錄下的lib目錄與上次提交之間的差別(或者更準確的說是在當前分支)。
如果不是查看每個文件的詳細差別,而是統計一下有哪些文件被改動,有多少行被改動,就可以使用‘–stat’ 參數。
1 $ git diff --stat
2
3 layout/book_index_template.html | 8 ++-
4
5 text/05_Installing_Git/0_Source.markdown | 14 ++++++
6
7 text/05_Installing_Git/1_Linux.markdown | 17 +++++++
8
9 text/05_Installing_Git/2_Mac_104.markdown | 11 +++++
10
11 text/05_Installing_Git/3_Mac_105.markdown | 8 ++++
12
13 text/05_Installing_Git/4_Windows.markdown | 7 +++
14
15 .../1_Getting_a_Git_Repo.markdown | 7 +++-
16
17 .../0_ Comparing_Commits_Git_Diff.markdown | 45 +++++++++++++++++++-
18
19 .../0_ Hosting_Git_gitweb_repoorcz_github.markdown | 4 +-
20
21 9 files changed, 115 insertions(+), 6 deletions(-)
EOF