2018年12月31日 星期一

[Git筆記-2]建立一個新檔案,將那些檔案修改提交 commit 到 Git 中

一、在repository 檔案庫中建立一個新檔案(Test.txt),新增一些內容到該檔案並且將那些檔案修改提交 commit 到 Git 中

1.新增一個檔案Test.txt

miller@miller-dell MINGW64 ~/hello-test (master)                                
$ ll                                                                            
total 1                                                                         
-rw-r--r-- 1 miller 197609 12 一月    1 15:27 Test.txt                          

2.利用git status來檢查hello-test狀態,會發現因為我們有新增新的檔案(Test.txt),但是還沒進到 git 追蹤範圍中/暫存區。

miller@miller-dell MINGW64 ~/hello-test (master)                                
$ git status                                                                    
On branch master                                                                
                                                                                
No commits yet                                                                  
                                                                                
Untracked files:                                                                
  (use "git add ..." to include in what will be committed)                
                                                                                
        Test.txt                                                                
                                                                                
nothing added to commit but untracked files present (use "git add" to track)    
                                                                                
3.所以我們要使用 git add Test.txt 加入追蹤,這樣之後檔案有修改就可以追蹤到。

miller@miller-dell MINGW64 ~/hello-test (master)                                
$ git add Test.txt                                                              
4.再利用git status來檢查狀態,若沒問題就可以準備commit 至repository。

$ git status                                                                    
On branch master                                                                
                                                                                
No commits yet                                                                  
                                                                                
Changes to be committed:                                                        
  (use "git rm --cached ..." to unstage)                                  
                                                                                
        new file:   Test.txt                                                    
5.利用git commt簽入,-m是加入簽入說明。

miller@miller-dell MINGW64 ~/hello-test (master)                                
$ git commit -m "新增檔案第一次簽入"                                            
[master (root-commit) 37a839c] 新增檔案第一次簽入                               
 1 file changed, 1 insertion(+)                                                 
 create mode 100644 Test.txt                                                    
6.再利用git status檢查狀態會發現,已沒有待commit的檔案。

miller@miller-dell MINGW64 ~/hello-test (master)                                
$ git status                                                                    
On branch master                                                                
nothing to commit, working tree clean                                           
7.修改後檔案需要重新add後再commit如下圖兩步驟,也可以簡寫成git commit -a -m "修改了Test.txt"

miller@miller-dell MINGW64 ~/hello-test (master)                                
$ git add Test.txt                                                              

miller@miller-dell MINGW64 ~/hello-test (master)                                
$ git commit -m "修改了Test.txt"                                                
[master 78ffdf8] 修改了Test.txt                                                 
 1 file changed, 2 insertions(+), 1 deletion(-)                                 

[Git筆記-1] Git教學影片-建立git帳號,並且新增設定工作目錄

Github 則是一個支援 git 程式碼存取和遠端托管的平台服務,有許多的開放原始碼的專案都是使用 Github 進行程式碼的管理。
Git 是一個分散式版本控制軟體
Git教學影片 

寫給大家的 Git 教學 from littlebtc


Git 基本觀念


Git 可以分為 Local(本地)和 Remote(遠端)兩個環境,由於 Git 屬於分散式的版本控制系統,所以開發者可以在離線 local 環境下開發,等到有網路時再將自己的程式推到 Remote 環境或 pull 下其他開發者程式碼進行整合。在 Local 中我們又分為 working directory(工作資料夾)、staging area(暫存區)和 repositories(檔案庫)。

實機操作
miller@miller-dell MINGW64 ~                                                    
$ mkdir hello-test                                                              
                                                                                
miller@miller-dell MINGW64 ~                                                    
$ cd hello-test                                                                 
                                                                                
miller@miller-dell MINGW64 ~/hello-test                                         
$ git init                                                                      
Initialized empty Git repository in C:/Users/miller/hello-test/.git/            
                                                                                
miller@miller-dell MINGW64 ~/hello-test (master)                                
1.mkdir 建立存放程式的資料夾(hello-test)
2.cd hello-test (切換至hello-test資料夾)
3.git init (將專案資料夾建立成 git repository)
4.git init之後多出git資夾,git資料夾內會多出列圖中的檔案及目錄。

miller@miller-dell MINGW64 ~/hello-test (master)                                
$ ls .git/                                                                      
config  description  HEAD  hooks/  info/  objects/  refs/                       
git init之後多出git資夾,git資料夾內會多出列圖中的檔案及目錄








2018年12月23日 星期日

[筆記][html5]Web Storage可以用Local Storage或Session Storage兩種方式取代cookie跟seession的寫

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>測試Web Storage part1</title>
</head>
<body>
html5  Web Storage可以用Local Storage或Session Storage兩種方式取代cookie跟seession的寫法。
</br>
<div id="result"></div>
<p><button onclick="clickCounter()" type="button">SessionStorage 點我計數!</button></p>
<script>
if(typeof(Storage)!=="undefined")
{
  localStorage.aa="測試教程part1";  /*以Key-Value的型式儲存*/
  document.getElementById("result").innerHTML="站名:" + localStorage.aa;
}
else
{
  document.getElementById("result").innerHTML="您的browser不支援 web Storage。";
}

function clickCounter()/*SessionStorage範例*/
{
if(typeof(Storage)!=="undefined")
{
if (sessionStorage.clickcount)
{
sessionStorage.clickcount=Number(sessionStorage.clickcount)+1;
}
else
{
sessionStorage.clickcount=1;
}
document.getElementById("result").innerHTML="已點按鈕 " + sessionStorage.clickcount + " 次 ";
}
else
{
document.getElementById("result").innerHTML="抱歉,您的browser不支援Session Storage";
}
}
</script>

</body>
</html>

2018年12月19日 星期三

[ML]解釋名詞:自變數與依變數?

解釋名詞:自變數與依變數?
        當我們觀察二個或多個現象之間的關係,是否有因果關係時,被影響的現象稱為依變數,而影響到依變數的現象稱為自變數

例如一:利率的變化影響股價的漲跌,股價即為依變數,而利率就是自變數。利率的變動是因,股價的波動為果

例如二:在迴歸方程式中
Y = a X + b Z + c W
Y 稱為依變數
X Z W 等稱為自變數
依變數會受到自變數的變化而影響

2018年11月29日 星期四

[筆記]oracle 用sql判斷特定欄位值,是否為全數字

--下面語法,會回傳判斷的值中包含幾個非數字,若為數值,則回傳 NULL
SELECT LENGTH(TRIM(TRANSLATE('要判斷的值', ' +-.0123456789', ' ')))  FROM DUAL;



--用應在抓暫收說明為全數字的寫法.
select isus_no,TDESC1
from aoim_sus_pre
WHERE LENGTH(TRIM(TRANSLATE(TDESC1, ' +-.0123456789', ' '))) IS NULL
and tdesc1 is not null

;

2018年6月25日 星期一

python3-筆記

1.程式利用縮行行數區分程式區塊,若空格不一致則會發生程式錯誤。
ex:
if True:
    print ("Answer")
    print ("True")
else:
    print ("Answer")
  print ("False")    # 縮行不一致,會導致程式錯誤

========================================================================
2.import 與 from...import
在 python 用 import 或者 from...import來導入相對的moudle。
將整個模組(some_module)導入,格式為: import some_module
從某個模組(some_module)導中導入某個函数(function),格式為: from some_module import some_function_name
從某個模組(some_module)中導入多個函数,格式為: from some_module import first_func_name, second_func_name, third_func_name
將某個模組(some_module)中的全部函數全部導入,格式為: from some_module import *

========================================================================
3.變數
  a.變數不需要宣告,但一定要有預設值,利用預設值的指定,來建立變數。
ex:
counter = 100          # 整數變數
miles   = 1000.0       # 浮點變數
name    = "runoob"     # 字串變數
========================================================================
4.List/Tuple/Set/dictionary 差異
a.List的值可以變更,Tuple的值不可變更。
b.List用[]包值,Tuple用()包值。
c.set用{}來包值,而且值不能重覆,且值不可變更,注意:若要建一個空set,語法要用set()。
d.dictionary是Key:vale的集合,用{}來包值且Key值必須為唯一值。

ex:List
>>> tinylist = [123, 'runoob']
>>> tinylist[1]="aa"
>>> print(tinylist)
[123, 'aa'] -->輸出結果

ex:Tuple變更值會出現error
>>> tinylist =(123, 'runoob')
>>> tinylist(1)="aa"
  File "<stdin>", line 1                        --->error
SyntaxError: can't assign to function call
>>>

ex:set中的值不可重覆,若重覆會自動過濾。
>>> TestSet = {123, 'runoob',123, 'runoob'}
>>> print(TestSet)
{123, 'runoob'} -->輸出結果

ex:dictionary是Key:value集合
testdic={'name':'miller_wang','age':28}
>>> print(testdic['name'])
miller_wang -->輸出結果

>>> print(testdic)
{'name': 'miller_wang', 'age': 28} -->輸出結果
========================================================================
資料型別說明
List:將數字或字串,依序容納的串列(List=[1,2,3])
Tuple:不可覆寫的元組(tuple),可作為Dict的key(例:tuple=(1,2,3))
Set:不允許重複的無序資料列(例:set={1,2,3})
Dict:Key-Value的字典(dict)(例:dict={'one':1,'two':2,'three':3})

2018年1月7日 星期日

python3筆記-基本練習

指令模式:idle
快速鍵: Alt+N 帶回上個指令
Alt+P 清空指指令行
單行註解為 # ,多行註解則用 """ 開頭與結尾
exit() 來離開 Python 主控台
-----------------------------------------------------------------------------------------------
字串表示式:
>>> print ("test")
test
>>> print "aaa";
SyntaxError: Missing parentheses in call to 'print'. Did you mean print("aaa";)?
>>> print (2222)
2222
>>> print ("test")
test
>>> print ("test");
test
>>> print ("aaaaa"+"bbbbb")
aaaaabbbbb
>>> print ("test"*8)
testtesttesttesttesttesttesttest
>>> print ("test\n"*8)
test
test
test
test
test
test
test
test
-------------------------------------------------
str 函數可將物件轉為 字串
int 函數可將物件轉為 整數
--------------------------------------------------------------------
變數
>>> name="Jerry"
>>> print(name)
Jerry
--------------------------------------------------------------------
串列(List)
如果你只想要秀某一個數字,你可以使用 索引(index) 來指定。索引就是一個指出 List 某個物件位置的數字。

>>> IamList=[1,2,"a","b"]
>>> len(IamList)
4
>>> IamList.sort
<built-in method sort of list object at 0x05EF92D8>  #串列中不同型態值 ,不能排序

>>> print(IamList[3]) #取串列中特定位置值,開始值0
b
>>>
--------------------------------------------------------------------
字典(Dictionary) -->Key-Value物件
Dictionary 和 List 有點像,差別在於,你可以用鍵值(key)而非索引值(index)來取得在 Dictionary 中的值(value)。一個 key 可以是字串或數字。你可以使用兩個大括號來宣告一個 dictionary

>>> MyDIs={'name':'Miller','birthday':'1979/05/23','tall':'171cm','age':26}
>>> print(MyDIs['age'])

26
-----------------------------------------------------------------------
比對(compare)
>>> 5 > 2
True
>>> 3 < 1
False
>>> 5 > 2 * 2
True
>>> 1 == 1
True
--------------------------------------------------------------------------

If...elif...else

MyAge=int(input("Please input some value"))    #輸入文字並轉型
if MyAge>100:
print('Ha..too..Hight')
elif MyAge>40 and MyAge<=79:
print('Ha..Ha..Just Right')
else:
print('Ben...Ben..too...Low')

----------------------------------------------------------------------------------
自訂函數

def Hello(Lenag):
        if Lenag=="CHINESE":
                print("你好!!")
        elif Lenag=="English":
                print("Hello!!")
        elif Lenag=="Japanese":
                print("こんにちは")
        elif Lenag=="French":
                print("Bonjour!!")
        else:
                print("I don't know,What are you saing?")

run to shell的結果如下:
>>> Hello("French")
Bonjour!!

--------------------------------------------------------------------------------
迴圈(Loop)
ex1:

for i in range(1,6):
    print(i)

結果如下:(注意:range 會輸出第二個參數的前一個整數)
1
2
3
4
5

ex2:

warriors=['張飛','關羽','趙雲','馬超','黃忠','太史慈','夏候惇']
for name in warriors:
    print(name)

結果如下:
張飛
關羽
趙雲
馬超
黃忠
太史慈
夏候惇