【Git】スタート

8835 ワード

目次
1.Ubuntuインストール
2.ヘルプの使用
3.初期バージョンライブラリの作成
4.バージョンライブラリへのファイルの追加
5.提出
6.送信の表示
7.提出差異の表示
8.バージョンライブラリ内のファイルの削除と名前変更
9.バージョンライブラリのコピーの作成
10.プロファイル

1.Ubuntuインストール


apt-get install git git-doc gitweb git-gui gitk git-email git-svn

2.ヘルプの使用


    git --version                #  git     
    git [commands] --help        #    commands     

3. バージョンライブラリの

Git , ,cd , :


    git init

, , .git。Git .git 。 .git Git 。

4.バージョンライブラリへのファイルの


    git add filename

, 。


    git add . 

,Git , 。Git add commit , 。 “ ” 。

test_git, “hello.txt”, :


    $ mkdir test_code
    $ echo "hello" > hello.txt
    $ git init
    $ ls -al

total 16
drwxr-xr-x  3 root root 4096 1   28 10:14 .
drwxr-xr-x 17 root root 4096 1   28 10:12 ..
drwxr-xr-x  7 root root 4096 1   28 10:34 .git
-rw-r--r--  1 root root   10 1   28 10:14 hello.txt

    $ git status

On branch master

Initial commit

Untracked files:
  (use "git add ..." to include in what will be committed)

	hello.txt

    $ git add hello.txt
    $ git status

On branch master

Initial commit

Changes to be committed:
  (use "git rm --cached ..." to unstage)

	new file:   hello.txt

, add ,git status 。

5.

git commit 。


    $ git commit -m "Initial contents of test"    \
                 --author="L.C    "


*** Please tell me who you are.

Run

  git config --global user.email "[email protected]"
  git config --global user.name "Your Name"

to set your account's default identity.
Omit --global to set the identity only in this repository.

, 。 GIT_AUTHOR_NAME GIT_AUTHOR_EMAIL Git email 。

。 。 git commit Git , GIT_EDITOR :


    export GIT_EDITOR=vim

, , ( , ):


    $ git commit hello.txt    #   vim   ,        ,         
    $ git status

On branch master
nothing to commit, working directory clean

git status , , 。 

commit+filename :

(1) “htmtest.html” add :


    $ git commit hetmtest.html
error: pathspec 'htmltest.html' did not match any file(s) known to git.

(2) , add , commit+filename , , , , 。

, git commit ( ), , :


    $ echo "test" > htmltest.html
    $ git commit
    
On branch master
Changes not staged for commit:
	modified:   htmltest.html

no changes added to commit

git commit htmltest.html 。

6. の

git log 。


    $ git log

commit 0c08126a2fcd8e7916a3fa2df95cbe2c08e77407
Author: L.C 
Date:   Mon Jan 28 13:47:54 2019 +0800

    add test html file

commit 314d128278db47b4f149e4e18357aa407175211b
Author: L.C 
Date:   Mon Jan 28 13:29:20 2019 +0800

    add the changes 1

commit 2db1622a3bd8992d0bcd019469caab2a018216f7
Author: L.C 
Date:   Mon Jan 28 13:05:23 2019 +0800

    Init contents

,  --pretty=oneline パラメータ.
git show+コミットコード(あるコミットの を )とgit show( コミットした を )


    $ git show 314d128278db47b4f149e4e18357aa407175211b
commit 314d128278db47b4f149e4e18357aa407175211b
Author: L.C 
Date:   Mon Jan 28 13:29:20 2019 +0800

    add the changes 1

diff --git a/hello.txt b/hello.txt
index aa71bc4..8716a4f 100644
--- a/hello.txt
+++ b/hello.txt
@@ -1,3 +1,4 @@
 hello git
 
 add changes
+add changes 1

git show-branch ( )

git show-branch --more=10 ( 10 )


    $ git show-branch --more=10
[master] add htmltest1.html and changes in htmltest.html
[master^] add test html file
[master~2] add the changes 1
[master~3] Init contents

7. の

git diff ID1 ID2


    $ git diff 314d128278db47b4f149e4e18357aa407175211b 2db1622a3bd8992d0bcd019469caab2a018216f7

8.バージョンライブラリ のファイルの と

:git rm git commit


    $ ls

hello.txt  htmltest1.html  htmltest.html

    $ git rm htmltest1.html
    $ git commit -m "rm htmltest1.html"
    $ ls

hello.txt  htmltest.html

:git mv git commit


    $ git mv hello.txt hello.rename.txt
    $ git commit -m "rename hello.txt--->hello.rename.txt"

9.バージョンのロールバック

git reflog

9.バージョンライブラリのコピーの

git clone

:test_git, host_git 。


    $ cd ~
    $ mkdir host_git
    $ git clone ./test_code/test_git/ ./host_git/

clone 。

10.プロファイル

git :

.git/config

        , --file , 。 。

~/.gitconfig

        , --global 。 。

/etc/gitconfig 

        , --system 。 。

, , .git/config ( )。


    $ git config user.name "L.C"

, , ~/.gitconfig 。


    $ git config --global user.name "L.C"

git config -l 。

git --unset :


    $ git config --unset --gloabl user.name "L.C"