- 投稿日:2021-03-15T23:53:19+09:00
gitにて、初回push時にエラー「Missing or invalid credentials.」となりpushできなかった話(解決までの流れも記載)
記事概要
吾輩は猫である。
git練習中。
pushを行ったところ、下記エラーが出たため、解決を試みた。結末としては、いろいろ触っていると解決できたので、エラー発生時の状況、エラー原因、調査・解決手順を残しておく。
エラー内容Missing or invalid credentials. Error: socket hang up at connResetException (internal/errors.js:570:14) at Socket.socketOnEnd (_http_client.js:440:23) at Socket.emit (events.js:228:7) at endReadableNT (_stream_readable.js:1185:12) at processTicksAndRejections (internal/process/task_queues.js:81:21) { code: 'ECONNRESET' }状況
環境はmacOS。
VScode上で初めてターミナルを起動し、
git add
→ git commit
→ git push
したところ、git pushした際に、冒頭のエラーが発生。
pushできず。エラー内容
冒頭のエラーメッセージにおいて重要なのはおそらく下記の部分。
重要な部分(仮)Missing or invalid credentials.直訳すると「資格情報が無い、または無効」
んん、わからん。「資格情報」とは何を指しているのか。
後述するエラー原因調査を経ての推測だが、『資格情報』と言うのはユーザ名とパスワードのこと。つまり、本エラーは「pushコマンドを実行しているお主は誰だ。名乗らぬ者はpushさせぬぞ」と言っておられる。
エラー原因調査・解決手順
まず、どこに原因があるのかを大きく切り分けることにした吾輩。
ずばり、原因はgit側かVSCode側かを探っていく。と言うことで、VSCode上で行っていたgit pushを、普通にターミナルで行ってみることに。
これで、VSCode上のターミナルでpushした際のエラーが出れば、エラーの原因としてVSCodeのターミナルか通常のターミナルかといった違いは関係ないと言うことができると思ふ。通常のターミナルでgit pushを行ったところ、ユーザ名とパスワードの入力を尋ねられた。
問われるがまま入力すると、push成功。_:(´ཀ`」 ∠):{えぇ・・・
その後、VSCode上でgit add、git commitを再度行った上でgit pushしてみると、ユーザ名とパスワードを尋ねられ、問われるがまま入力。
pushできました。_:(´ཀ`」 ∠):{えぇ・・・
と言うことで、pushできなかった要因は、push時にユーザ名とパスワードを入力しなかったからと思われる。
なぜ、初回のVSCodeターミナルでのpush時にユーザ名とパスワードを尋ねられなかったのか。
VSCodeの設定か、gitの設定か・・・結局、何の設定だったのかは分けられなかったけれど、エラー内容はわかった。
もう少し余力が出てきたら、そのあたりも調査してみます。
- 投稿日:2021-03-15T22:49:16+09:00
bitbucketでリモートブランチを削除 (git)
目的
bitbucket でリモートブランチを削除する時に、WebサイトでGUIから行っていましたが
コマンドから実施する方法を調べました。
解決策
削除したいリモートのブランチを trash-test とします。
実施コマンド
$ git push --delete origin trash-test$ git push origin :trash-test出力結果
$ git push origin :trash To https://bitbucket.org/hogehoge/fugafuga.git - [deleted] trash-test※ 記事を書いてみたものの、危ないコマンドなので実施するときは気をつけてください。
あまり使う機会はないかもしれません
参考
- 投稿日:2021-03-15T18:47:15+09:00
【Git初心者向け】リポジトリ作成
リポジトリ作成
リポジトリ作成するときの毎回の儀式
忘れるのでメモする流れ
対象ディレクトリに移動
cd vue-tasks/git初期化
git init状態確認
git status差分ステージングに追加
git add .コミットする
git commit -m "initial commit"github上でリモートリポジトリを作成する
リモートリポジトリのアドレスを名前を付けて記録(これをすることでリモートリポジトリへの操作をするときいちいちURLを叩かなくて済む)
origin:記録する名前
https://github.com/tanoken729/vue-tasks.git(例)
:リモートリポジトリのURL
git remote add origin https://github.com/tanoken729/vue-tasks.git(例)リモートリポジトリに変更履歴をpushする
実行オプションで-uを指定すると、次回以降はそのブランチ名の指定を省略できる(一番初めはorigin masteを省略できない)git push -u origin masterリモートリポジトリをgithubで作成したときのREADME.mdがある(githubで作成したときにREADME.md作成した場合)とpushが失敗する
対処法
https://qiita.com/kazuki0714/items/ceda3a6721a9a99082de
もう一個あったはず。参照
- 投稿日:2021-03-15T13:48:19+09:00
「x分前にコミット」されたような最新pandocを,Windows 10に,万難を排して入れる!
YAMLキー
nocite
が,--biblatex
・--natbib
オプションと一緒には使えない?ことの発端は,とある書類の作成用に,要旨付き参考文献表PDFを作ろうと思ったことである。pandoc markdownを使ってそうした文献表PDFを生成するには,YAMLセクションの
nocite
キーに,書誌情報ファイル(私の場合は.bib
ファイル)のキーを@
mentionしていく。詳しいやり方は,pandocのMANUAL該当箇所を読まれたい。しかし,現在の安定版のpandocでは,PDF生成時にbiblatexあるいはnatbibで文献を処理させるように設定すると,せっかくYAMLに書いた
nocite
が無視されてしまう。しかし,文献の体裁は,どうしてもbiblatexで処理しないと提出に値するものにならない(こんな仕上がりにしたい)。そのため,3年以上前に他の方が始めたもののほとんど放置状態にあったissueに重ねて,biblatexあるいはnatbibを使っていてもnocite
が正しく使えるようにしてほしいとお願いした。すると,作者が早速対応してくださった。さて,最新ほやほやpandocをインストールするにはどうすればいいの?
まずは,pandocのMANUALの該当ページを見る。今回は,任意のディレクトリに,
git clone
でソースをダウンロードした。git clone https://github.com/jgm/pandoc cd pandoc
問題はここからである。stackというプログラムでpandocをインストールせよとのことなので,Windows 64bit版のインストーラでstackをインストールしてから,Command PromptなりWindows PowerShellなりで,下記を実行する。
stack setup stack install
作業は順調に進むかに見えた。しかし,暗雲は立ち込めるものである。x509-validationというプログラム(なんですか,これ?)のインストールのところで,インストールが止まってしまう。エラーメッセージは
<stderr>: commitAndReleaseBuffer: invalid argument (invalid character)
。stderr
...$\text{Standard Error}$ですかっ?!Rは動かしてませんよ!統計(まだ)かけてません!初めて見るえらあめっせーじなので,無視して再度stack install
を叩く(普通無視しないと思います。良識のある読者諸賢は,検索なさるべきです)。すると,1回目のstack install
でインストールされていなかったプログラムが,するするとインストールされる。1度目のときはProgress: x/129
くらいあったものが,2度・3度と繰り返していくうちにProgress: x/6
にまで減った(ええ,それくらいエラーメッセージを無視し続けたということですよ)。しかし,ついにProgress
の数は,6から減らなくなった。エラーメッセージは変わらない:<stderr>: commitAndReleaseBuffer: invalid argument (invalid character)
...WindowsのCommand Prompt/Windows PowerShellの文字コードを変えれば,インストールは無事終了
<stderr>: commitAndReleaseBuffer: invalid argument (invalid character)
で検索すると,WindowsのCommand Promptの文字コードを一時的に変えればインストールできるという記事を見つけた。紹介されている方法は,Windows PowerShellでも出来る。実に簡単でchcp 65001これだけである。反応は特になし。強いて言えば,画面の文字が小さくなった。このコマンドを打ってから,再度
stack install
を叩く。これで,出来立てのpandocのインストールは済んだ。最後に,chcp 932として,WindowsのCommand Prompt/Windows PowerShellの文字コードを戻すのが良いようだ。
インストールは落着したが
これで難関は突破した。あとは日ごろの不勉強を取り返して論文を読み,例の書類を期限内に提出するだけである汗
まだまだ,紆余曲折に終わりはない。