1. ホーム
  2. ギット

ローカルプロジェクトをGithubにアップロードする

2022-03-17 05:16:52

次回は

Githubを利用しているとはいえ、コマンドラインはあまり使わないので忘れてしまうことも多いので、あえてここにメモしておきます。

1. GitHubでプロジェクトを作成する



2. ローカル・フォルダーで、Gitの初期化を行います。

~/Aliyun/alioss ⌚ 17:27:15
$ git init
Initialized empty Git repository in /Users/wangdong/Aliyun/alioss/.git/

3. すべてのファイルをGitに追加する

~/Aliyun/alioss on master! ⌚ 17:27:24
$ git add .

4. Gitからアドレスをコピーする







5. ローカルプロジェクトとリモートのGitHubを関連付けます。

~/Aliyun/alioss on master! ⌚ 17:28:54
$ git remote add xiongben-tongxue https://github.com/xiongben-tongxue/alioss-demo.git

6. ここで、git pushを実行すると、次のようなエラーが発生します。

~/Aliyun/alioss on master! ⌚ 17:29:18
$ git push
fatal: No configured push destination.
Either specify the URL from the command-line or configure a remote repository using

    git remote add <name> <url>

and then push using the remote name

    git push <name>

7. 次に、ステータスを見ます

~/Aliyun/alioss on master! ⌚ 17:31:06
$ git status
On branch master

No commits yet

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

    new file: .gitignore
    new file: .mvn/wrapper/maven-wrapper.jar
    new file: .mvn/wrapper/maven-wrapper.properties
    new file: conf/log4j.properties
    new file: mvnw
    new file: mvnw.cmd
    new file: pom.xml

8. 最初にファイルを追加し、次にコミットする必要があります。

~/Aliyun/alioss on master! ⌚ 17:31:15
$ git add -A

~/Aliyun/alioss on master! ⌚ 17:31:19
$ git commit -m "Fix file upload to github"
[master (root-commit) 79e296b] Fixing files to upload to github
 25 files changed, 1708 insertions(+)
 create mode 100644 .gitignore
 create mode 100644 .mvn/wrapper/maven-wrapper.jar
 create mode 100644 .mvn/wrapper/maven-wrapper.properties
 create mode 100755 conf/log4j.properties
 create mode 100755 mvnw
 create mode 100644 mvnw.cmd
 create mode 100644 pom.xml

9. もう一度 git pull します。

~/Aliyun/alioss on master ⌚ 17:31:39
$ git pull
warning: no common commits
remote: Counting objects: 3, done.
remote: Total 3 (delta 0), reused 0 (delta 0), pack-reused 0
Unpacking objects: 100% (3/3), done.
From https://github.com/xiongben-tongxue/alioss-demo
 * [new branch] master -> origin/master
There is no tracking information for the current branch.
Please specify which branch you want to merge with.
See git-pull(1) for details.

    git pull <remote> <branch>

If you wish to set tracking information for this branch you can do so with:

    git branch --set-upstream-to=<remote>/<branch> master

10. ブランチアソシエーション

~/Aliyun/alioss on master ⌚ 17:42:35
$ git branch --set-upstream-to=origin/master master
Branch master set up to track remote branch master from origin.

11. git pull がエラーを報告する

~/Aliyun/alioss on master ⌚ 17:43:53
$ git pull
fatal: refusing to merge unrelated histories

12. git push エラー

~/Aliyun/alioss on master ⌚ 17:49:17
$ git push
To https://github.com/xiongben-tongxue/alioss-demo.git
 ! [rejected] master -> master (non-fast-forward)
error: failed to push some refs to 'https://github.com/xiongben-tongxue/alioss-demo.git'
hint: Updates were rejected because the tip of your current branch is behind
hint: its remote counterpart. Integrate the remote changes (e.g.
hint: 'git pull ...') before pushing again. before pushing again.
hint: See the 'Note about fast-forwards' in 'git push --help' for details.

13. git pull は、GitHub で作成された関連性のないファイルをプルできるようにする必要があるからです。

~/Aliyun/alioss on master ⌚ 17:49:43
$ git pull origin master --allow-unrelated-histories
From https://github.com/xiongben-tongxue/alioss-demo
 * branch master -> FETCH_HEAD
Merge made by the 'recursive' strategy.
 README.md | 2 ++
 1 file changed, 2 insertions(+)
 create mode 100644 README.md

14. 最後に、Git のプッシュが成功しました。

~/Aliyun/alioss on master ⌚ 17:50:09
$ git push
Counting objects: 52, done.
Delta compression using up to 8 threads.
Compressing objects: 100% (40/40), done.
Writing objects: 100% (52/52), 60.60 KiB | 8.66 MiB/s, done.
Total 52 (delta 4), reused 0 (delta 0)
remote: Resolving deltas: 100% (4/4), done.
To https://github.com/xiongben-tongxue/alioss-demo.git
   a6023fd..b3c0fcc master -> master