【git】
創建倉庫之後,常用命令:
git 有三個狀態:已提交(committed)、已修改(modified)和已暫存(staged);對應下圖四個狀態:本地工作目錄,緩存區(索引),本地倉庫,遠程倉庫
git clone ssh you git address # 將倉庫clone到本地
git add readme.txt # 添加文件
git commit -m"add readme" #評論 第一次提交的時候都必須 -m ,新文件夾
#git push -u origin master # 首次提交
git push origin master:refs/for/master #提交評審
如果是新文件夾,包括追寫別人工程代碼:1. git add * ; git commit -m"icafe-id" ; git pull ; git push origin master:refs/for/master ;
2. 再次更新: git add * ; git commit --amend ; git pull ; git push origin master:refs/for/master
git pull origin master #將遠程倉庫裏面的項目拉下來
dir #查看文件目錄
git rm -r --cached wanna_delete_file #刪除文件
git commit -m"delete file"
git commit --amend # 進入vi 添加工程核心目的
git rm -rf filepath # 刪除已經提交的文件夾或者文件(git rm -r file)
git commit --amend
git push origin master:refs/for/master
錯誤1:Pull is not possible because you have unmerged files.Please, fix them up in the work tree, and then use 'git add/rm <file>' as appropriate to mark resolution, or use 'git commit -a'
錯誤2:
git log 查看上一次提交 commit id A
git reset --soft A
git commit --amend
git push origin master:refs/for/master
解決辦法:1.pull會使用git merge導致衝突,需要將衝突的文件resolve掉 git add -u, git commit之後才能成功pull.
問題3:push代碼時候,master分支發生更改,而本地提交時未做最新與否的檢查,會出現本地最新提交結點與master最新結點錯位,git commit --amend中會出現其他文件夾文件,導致提交衝突;
解決辦法:
- git log -- 查看上一次提交commitid
- git reset commitid
- 衝突的其他文件夾文件,採用 git checkout -- <file> 排除非本文件夾下文件
- git status 判斷是否add 成功,因有可能顯示出 (git add 指定文件夾下文件)
- 後續正常git commit --amend
- git push
2.如果想放棄本地的文件修改,可以使用 git reset --hard FETCH_HEAD,FETCH_HEAD表示上一次成功git pull之後形成的commit點。然後 git pull .
注意:git merge會形成MERGE-HEAD(FETCH-HEAD) 。git push會形成HEAD這樣的引用。HEAD代表本地最近成功push後形成的引用。
git pull --rebase # 將遠程最新分支拉倒本地,覆蓋本地做爲最新部分
git status # 命令用於顯示工作目錄和暫存區的狀態。使用此命令能看到那些修改被暫存到了, 哪些沒有, 哪些文件沒有被Git tracked到。git status不顯示已經commit到項目歷史中去的信息
git log | head -10 # 項目歷史10條信息
【Linux-shell】
alias fpwd='__fpwd(){ echo "ftp://`hostname`:`pwd`/$1";};__fpwd'
fpwd 文件名 #生成ftp地址
##ftp://kk-kk-k2q-70.k01.xxxx.com:/home/disk1/work1/yyyy/data/word.images
shit+g # 文件最後一行
g g # 文件第一行
crontab:設置例行調度任務
wget 失敗:filepath目錄不存在, 給該目錄加權限:chmod +rx filepath 即可,因wget 是按照權限來的
#vim
/\<the\> vim 中精確查找 the
vsp filename # 左右打開不同文件
ctrl+w+[h,l] # 光標跳轉到左、右文件
:9,15 copy 16 或 :9,15 co 16 #將第9行至15行復制到第16行
u #撤銷上一步的操作
Ctrl+r #恢復上一步被撤銷的操作
查找文件內容:
grep -rn "you_wanna_search_content" *
-r 是遞歸查找
-n 是顯示行號
* : 表示當前目錄所有文件,也可以是某個文件名
kill %1 殺當殺一個後臺程序,這個後臺程序的“工作號碼(jobnumber)”是1號;這條命令往往是用在輸入如下命令之後:jobs -l
jobs用來查看目前的後臺工作狀態,顯示結果裏面最前面的數字號就是對應進程的jobnumber,然後就可以用kill %jobnumber的格式來殺死jobnumber對應的後臺工作。
【MySQL】
mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information |
| ImgLib |
| ImgUsr |
+--------------------+
mysql> use ImgLib;
mysql> show tables;
+-------------------------+
| Tables_in_ImageSegments |
+-------------------------+
| images0 |
| images1 |
| images2 |
| images4 |
+-------------------------+
select * from images0 where imageid=1234 \G